首页  >  文章  >  后端开发  >  php怎么设置目录权限?

php怎么设置目录权限?

青灯夜游
青灯夜游原创
2020-11-03 14:13:313804浏览

php设置目录权限的方法:1、使用mkdir(函数在创建目录时设置目录的权限,语法“mkdir(目录的名称,权限)”;2、使用chmod()函数改变指定目录的权限,语法“chmod(文件/目录的名称,权限)”。

php怎么设置目录权限?

推荐:《PHP视频教程

php设置目录权限的方法:

方法1:使用mkdir() 函数在创建目录时规定权限

语法:

mkdir(path,mode)

1.png

示例:

<?php
mkdir(&#39;test&#39;,0777); 
?>

注释:mode 参数在 Windows 平台上被忽略。自 PHP 4.2.0 起成为可选项。

方法2:使用chmod() 函数设置目录权限

chmod() 函数改变指定文件的权限。

如果成功则返回 TRUE,如果失败则返回 FALSE。

语法

chmod(file,mode)

2.png

示例:

<?php
// 所有者可读写,其他人没有任何权限
chmod("test.txt",0600);
// 所有者可读写,其他人可读
chmod("test.txt",0644);
// 所有者有所有权限,其他所有人可读和执行
chmod("test.txt",0755);
// 所有者有所有权限,所有者所在的组可读
chmod("test.txt",0740);
//允许全局访问
chmod(&#39;./xw/&#39;,0777);
?>

PHP 使用 chmod() 的注意事項

 由於某虛擬主機上遇到很奇妙的狀況, 做圖片上傳的功能, 但是圖片上傳後, 權限是 600, 而 owner 是 Apache user, 所以要做 local 的備份時, 那些上傳的圖片都無法備份.

 此狀況只好寫個程式讓 Apache user 來做 chmod 的動作, 將圖片檔案權限都改成 644 才行.

修改目錄下所有檔案權限

要將目錄下的檔案都修改成 644, 修改全部權限的方法很簡單, 程式如下: (假設檔名是 chmod.php)

<?php
`chmod 644 *`;
?>

這樣子就能將上傳的 abc.jpg 權限改成 644 的權限.

 chmod 注意事項

 上面是正確寫法, 要注意的是, 下面都是錯誤的寫法: (註解的是權限的結果)

chmod($filename, &#39;644&#39;); // --w----r-T
chmod($filename, &#39;0644&#39;); // --w----r-T
chmod($filename, 644); // --w----r-T
chmod($filename, &#39;u+rwx,go+rx&#39;); // --------- (000)
chmod($filename, &#39;a+x&#39;); // --w----r-T

官方網站說明: bool chmod (string $filename , int $mode)

 第二個參數的 int $mode, 這欄一定要是數字, 而且要是八進位的數字, 不然都會是上面註解的結果.

 八進位在這邊很好記, 就是原本下的十進位指令, 前面加個 0 就可以了, 如下都是正確範例:

chmod($filename, 0644); // -wr--r--r
chmod($filename, 0755); // -wr-wr-wr

更多编程相关知识,请访问:编程入门!!

以上是php怎么设置目录权限?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn