note 44655 deleted from function.mkdir by betz
| From: | betz@php.net | Date: | Thu, 12 Aug 2004 06:54:55 +0000 |
| Subject: | note 44655 deleted from function.mkdir by betz | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-74526@lists.php.net to get a copy of this message | ||
Note Submitter: bart@cdasites.com
----
The mkdir_p function submitted by saint at corenova.com is nice and simple, but errors when trying
to create several directories in a tree, eg:
/foo/bar/baz/1
/foo/bar/baz/2
/foo/bar/baz/3
Adding a check before the mkdir function fixes this.
// Amended Function:
function mkdir_p($target)
{
if (is_dir($target)||empty($target)) return 1; // best case check first
if (file_exists($target) && !is_dir($target)) return 0;
if (mkdir_p(substr($target,0,strrpos($target,'/'))))
if (!file_exists($target)) return mkdir($target); // crawl back up & create dir tree
return 0;
}
Thanks for the function Saint, made my life easier!