PHP4 下递归 (recursive)创建目录(mkdir)的方法(UPDATE!)

PHP4 下递归 (recursive)创建目录(mkdir)的方法一

PHP5 下创建目录函数 mkdir 增加了一个新的参数 recursive ,通过设置 recursive 为 true 可以实现递归创建目录的目的,这个功能在我们不能确保上级目录存在的情况下非常有用,本文介绍了在 PHP4 下实现这一功能的方法。

 
<?php
 
// 说明:PHP4 下递归 (recursive)创建目录(mkdir)的方法
// 整理:http://www.codebit.cn
 
function mkdirs($dir, $mode = 0777)
{
	if (is_dir($dir) || @mkdir($dir, $mode)) return TRUE;
	if (!mkdirs(dirname($dir), $mode)) return FALSE;
	return @mkdir($dir, $mode);
}
 
?>

函数有个可选参数 $mode , 即创建的文件夹的权限,默认为 0777。

PHP4 下递归 (recursive)创建目录(mkdir)的方法二

此方法由 millken 在 【喜悦国际村】论坛中发布,是他从国外的一个缓存系统(PHP-Cache-Kit)中摘录,代码极其精练:

 
<?php
 
// 说明:PHP4 下递归 (recursive)创建目录(mkdir)的方法
// 整理:CodeBit.cn ( http://www.CodeBit.cn )
// 来源:http://acme-web-design.info/php-cache-kit.htm
 
function forceDirectory($dir){ // force directory structure 
	return is_dir($dir) or (forceDirectory(dirname($dir)) and mkdir($dir, 0777));
}
//USAGE:forceDirectory('/a/b/c/d/f');
 
?>