PHP mkdir 方法 创建 0777 权限的目录问题

时间:2015-09-11 18:51:41   收藏:0   阅读:1749

php 中使用 mkdir() 方法创建 0777 权限的目录:

$path = ‘./Logs/secondCheck/‘;
if(!is_dir($path)){   mkdir($path, 0777, true); }

 

在 linux (Ubuntu)系统中执行该段代码后,实际创建的文件的权限是 755:

技术分享

 

原因:在 linux 系统中在创建 文件/文件夹 时有一个默认权限,此权限受 umask 设置影响,linux 系统中默认的 umask 为 022,与 777 & 运算之后,就变成了 755。

解决方案:

先创建目录,再使用chmod将权限修改为 777:

$path = ‘./Logs/secondCheck/‘;
if(!is_dir($path)){ mkdir($path, 0777, true); chmod($path, 0777); }

此时:

技术分享

 

参考:http://blog.snsgou.com/post-380.html

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!