php mkdir权限不够的解决方法

  介绍

这篇文章给大家分享的是有关php mkdir权限不够的解决方法的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

php mkdir权限不够的解决办法:1、把系统默认权限改为777,并将mkdir指定更大权限;2,将chmod函数设置比系统默认权限大的权限;3,将系统的mkdir命令设置为大于默认值的权限。

 php mkdir权限不够的解决方法

<强> php中mkdir()函数的权限问题

问题描述:

使用以下php代码创建了一个目录,期望目录的权限是0777年,实际结果是0755

mkdir (& # 39;。/aa/& # 39;, 0777年),

分析与测试结果:

1. mkdir()函数指定的目录权限只能小于等于系统umask设定的默认权限。

如linux默认的umask一般0022年,即创建目录的默认权限是0755年,所以这时php, mkdir (& # 39;。/aa/& # 39;, 0777)得到目录的权限是0755。

 xw@xw-X201: ~/桌面/dd/aa umask 000美元
  xw@xw-X201: ~/桌面/dd/aa php - r美元“mkdir (& # 39;。/xw2 & # 39;, 0777);“
  xw@xw-X201: ~/桌面/dd/aa $ ll
  总用量12
  drwxrwxrwx xw xw 4096 2012-06-01 12:08。/drwxr-xr-x xw xw 4096 2012-06-01 11:26里. ./drwxrwxrwx xw xw 4096 2012-06-01 12:08 xw2/

2. chmod()函数不受系统umask影响,可以设置比系统默认权限大的权限。

xw@xw-X201: ~/桌面/dd/aa umask美元   0022   xw@xw-X201: ~/桌面/dd/aa php - r美元“mkdir (& # 39;。/xw1 & # 39;, 0777);“   xw@xw-X201: ~/桌面/dd/aa php - r美元“mkdir (& # 39;。/xw2 & # 39;);“   xw@xw-X201: ~/桌面/dd/aa php - r美元“mkdir (& # 39;。/xw3 & # 39;); chmod (& # 39;。/xw3 & # 39;, 0777);“   xw@xw-X201: ~/桌面/dd/aa $ ll   总用量20   drwxrwxrwx 5 xw xw 4096 2012-06-01个身子。/drwxr-xr-x xw xw 4096 2012-06-01 11:26里. ./drwxr-xr-x xw xw 4096 2012-06-01十二11 xw1/drwxr-xr-x xw xw 4096 2012-06-01十二11 xw2/drwxrwxrwx xw xw 4096 2012-06-01个身子xw3/

3。系统的mkdir命令可以设置大于默认值的权限。

xw@xw-X201: ~/桌面/dd/aa umask美元   0022   xw@xw-X201: ~/桌面/dd/aa mkdir -m0777 xw美元   xw@xw-X201: ~/桌面/dd/aa $ ll   总用量12   drwxrwxrwx xw xw 4096 2012-06-01 12:18。/drwxr-xr-x xw xw 4096 2012-06-01 11:26里. ./drwxrwxrwx xw xw 4096 2012-06-01 12:18 xw/

总结:

php若要创建一个有读写权限的目录,最好使用以下代码,不要直接使用mkdir函数指定权限,以避免系统umask的影响

mkdir (& # 39;。/xw & # 39;);   chmod (& # 39;。/xw/& # 39;, 0777年),

感谢各位的阅读!关于php mkdir权限不够的解决方法就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

php mkdir权限不够的解决方法