溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

php有哪些設(shè)置目錄權(quán)限的方法

發(fā)布時(shí)間:2020-11-04 10:10:00 來(lái)源:億速云 閱讀:147 作者:小新 欄目:編程語(yǔ)言

這篇文章給大家分享的是有關(guān)php有哪些設(shè)置目錄權(quán)限的方法的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。

php設(shè)置目錄權(quán)限的方法:1、使用mkdir(函數(shù)在創(chuàng)建目錄時(shí)設(shè)置目錄的權(quán)限,語(yǔ)法“mkdir(目錄的名稱(chēng),權(quán)限)”;2、使用chmod()函數(shù)改變指定目錄的權(quán)限,語(yǔ)法“chmod(文件/目錄的名稱(chēng),權(quán)限)”。

php設(shè)置目錄權(quán)限的方法:

方法1:使用mkdir() 函數(shù)在創(chuàng)建目錄時(shí)規(guī)定權(quán)限

語(yǔ)法:

mkdir(path,mode)

php有哪些設(shè)置目錄權(quán)限的方法

示例:

<?php
mkdir('test',0777); 
?>

注釋?zhuān)簃ode 參數(shù)在 Windows 平臺(tái)上被忽略。自 PHP 4.2.0 起成為可選項(xiàng)。

方法2:使用chmod() 函數(shù)設(shè)置目錄權(quán)限

chmod() 函數(shù)改變指定文件的權(quán)限。

如果成功則返回 TRUE,如果失敗則返回 FALSE。

語(yǔ)法

chmod(file,mode)

php有哪些設(shè)置目錄權(quán)限的方法

示例:

<?php
// 所有者可讀寫(xiě),其他人沒(méi)有任何權(quán)限
chmod("test.txt",0600);
// 所有者可讀寫(xiě),其他人可讀
chmod("test.txt",0644);
// 所有者有所有權(quán)限,其他所有人可讀和執(zhí)行
chmod("test.txt",0755);
// 所有者有所有權(quán)限,所有者所在的組可讀
chmod("test.txt",0740);
//允許全局訪(fǎng)問(wèn)
chmod('./xw/',0777);
?>

PHP 使用 chmod() 的注意事項(xiàng)

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

此狀況只好寫(xiě)個(gè)程式讓 Apache user 來(lái)做 chmod 的動(dòng)作, 將圖片檔案權(quán)限都改成 644 才行.

修改目錄下所有檔案權(quán)限

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

<?php
`chmod 644 *`;
?>

這樣子就能將上傳的 abc.jpg 權(quán)限改成 644 的權(quán)限.

chmod 注意事項(xiàng)

上面是正確寫(xiě)法, 要注意的是, 下面都是錯(cuò)誤的寫(xiě)法: (註解的是權(quán)限的結(jié)果)

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

官方網(wǎng)站說(shuō)明: bool chmod (string $filename , int $mode)

第二個(gè)參數(shù)的 int $mode, 這欄一定要是數(shù)字, 而且要是八進(jìn)位的數(shù)字, 不然都會(huì)是上面註解的結(jié)果.

八進(jìn)位在這邊很好記, 就是原本下的十進(jìn)位指令, 前面加個(gè) 0 就可以了, 如下都是正確範(fàn)例:

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

感謝各位的閱讀!關(guān)于php有哪些設(shè)置目錄權(quán)限的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI