php mkdir创建目录使用实例和需要注意的地方
php mkdir函数介绍mkdir函数用于新建目录, 语法: bool mkdir ( string $pathname [,int $mode = 0777 [,bool $recursive = false [,resource $context ]]] ) 尝试新建一个由 pathname 指定的目录。 参数: pathname 目录的路径。 mode 默认的 mode 是 0777,意味着最大可能的访问权。有关 mode 的更多信息请阅读 chmod()。 注意:mode 在 Windows 下被忽略。 返回值: 成功时返回 TRUE, 或者在失败时返回 FALSE。 mkdir函数实例使用mkdir函数创建目录并指定目录访问权限: mkdir( "testdir",0777 ); // global read/write/execute permissions mkdir( "testdir",0755 ); // world and group: read/execute only // owner: read/write/execute mkdir('/tmp/apples',0777) or die($php_errormsg); ?> 利用mkdir创建多级目录mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径; 第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权; 第三个参数:true表示允许创建多级目录。 举例代码(支持创建中文目录): header("Content-type:text/html;charset=utf-8"); //要创建的多级目录 $path="dai/php/php学习"; //判断目录存在否,存在给出提示,不存在则创建目录 if (is_dir($path)){ echo "对不起!目录 " . $path . " 已经存在!"; }else{ //第三个参数是“true”表示能创建多级目录,iconv防止中文目录乱码 $res=mkdir(iconv("UTF-8","GBK",$path),true); if ($res){ echo "目录 $path 创建成功"; }else{ echo "目录 $path 创建失败"; } } ?> php中mkdir()函数的权限问题使用以下php代码创建了一个目录,期望目录的权限是0777,实际结果是0755 mkdir('./aa/',0777) 分析与测试结果告诉我们: mkdir()函数指定的目录权限只能小于等于系统umask设定的默认权限。 chmod()函数不受系统umask影响,可以设置比系统默认权限大的权限。 系统的mkdir命令可以设置大于默认值的权限。 因此,php若要创建一个有读写权限的目录,最好使用以下代码,不要直接使用mkdir函数指定权限,以避免系统umask的影响 mkdir('./xw/'); chmod('./xw/',0777); (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
