推荐:《PHP视频教程》
php设置目录权限的方法:
方法1:使用mkdir() 函数在创建目录时规定权限
语法:
mkdir(path,mode)
登录后复制
示例:
<?php mkdir('test',0777); ?>
登录后复制
方法2:使用chmod() 函数设置目录权限
chmod() 函数改变指定文件的权限。
如果成功则返回 TRUE,如果失败则返回 FALSE。
语法
chmod(file,mode)
登录后复制
示例:
<?php // 所有者可读写,其他人没有任何权限 chmod("test.txt",0600); // 所有者可读写,其他人可读 chmod("test.txt",0644); // 所有者有所有权限,其他所有人可读和执行 chmod("test.txt",0755); // 所有者有所有权限,所有者所在的组可读 chmod("test.txt",0740); //允许全局访问 chmod('./xw/',0777); ?>
登录后复制
PHP 使用 chmod() 的注意事項
由於某虛擬主機上遇到很奇妙的狀況, 做圖片上傳的功能, 但是圖片上傳後, 權限是 600, 而 owner 是 Apache user, 所以要做 local 的備份時, 那些上傳的圖片都無法備份.
此狀況只好寫個程式讓 Apache user 來做 chmod 的動作, 將圖片檔案權限都改成 644 才行.
修改目錄下所有檔案權限
要將目錄下的檔案都修改成 644, 修改全部權限的方法很簡單, 程式如下: (假設檔名是 chmod.php)
<?php `chmod 644 *`; ?>
登录后复制
這樣子就能將上傳的 abc.jpg 權限改成 644 的權限.
chmod 注意事項
上面是正確寫法, 要注意的是, 下面都是錯誤的寫法: (註解的是權限的結果)
chmod($filename, '644'); // --w----r-T chmod($filename, '0644'); // --w----r-T chmod($filename, 644); // --w----r-T chmod($filename, 'u+rwx,go+rx'); // --------- (000) chmod($filename, 'a+x'); // --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怎么设置目录权限?的详细内容,更多请关注Work网其它相关文章!