为什么PHP不能创build一个拥有777权限的目录?
我试图创build一个目录在我的服务器上使用PHP的命令:
mkdir("test", 0777); 但它没有给予完全的权限,只有这些:
 rwxr-xr-x 
	
 该模式由您当前的umask修改,在这种情况下为022 。 
  umask工作方式是一个减法的。 您获得初始许可给mkdir并减去umask以获得实际权限: 
  0777 - 0022 ====== 0755 = rwxr-xr-x. 
 如果你不想这样做,你需要暂时将你的umask设置为零,所以它不起作用。 你可以用下面的代码来做到这一点: 
 $oldmask = umask(0); mkdir("test", 0777); umask($oldmask); 
 第一行将umask更改为零,同时将前一个存储到$oldmask 。 第二行使目录使用所需的权限和(现在不相关的) umask 。 第三行将umask恢复到原来的状态。 
有关更多详细信息,请参阅PHP doco的umask和mkdir 。
文件和目录的创build受到umask设置的影响。 您可以通过如下操作umask来创build具有特定权限集的文件: –
 $old = umask(0); mkdir("test", 0777); umask($old); 
可能你的umask被设置为排除这些