欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP chmod 函數(shù)與批量修改文件目錄權(quán)限

 更新時(shí)間:2010年05月10日 03:08:20   作者:  
chmod() 函數(shù)改變文件模式。chmod — Changes file mode 如果成功則返回 TRUE,否則返回 FALSE。
語(yǔ)法
chmod(file,mode)參數(shù) 描述
file 必需。規(guī)定要檢查的文件。
mode 可選。規(guī)定新的權(quán)限。
mode 參數(shù)由 4 個(gè)數(shù)字組成:
第一個(gè)數(shù)字永遠(yuǎn)是 0
第二個(gè)數(shù)字規(guī)定所有者的權(quán)限
第二個(gè)數(shù)字規(guī)定所有者所屬的用戶組的權(quán)限
第四個(gè)數(shù)字規(guī)定其他所有人的權(quán)限
可能的值(如需設(shè)置多個(gè)權(quán)限,請(qǐng)對(duì)下面的數(shù)字進(jìn)行總計(jì)):
1 - 執(zhí)行權(quán)限
2 - 寫(xiě)權(quán)限
4 - 讀權(quán)限
來(lái)看個(gè)簡(jiǎn)單的實(shí)例
復(fù)制代碼 代碼如下:

<?php
chmod("/somedir/somefile", 755); // 十進(jìn)制數(shù),可能不對(duì)
chmod("/somedir/somefile", "u+rwx,go+rx"); // 字符串,不對(duì)
chmod("/somedir/somefile", 0755); // 八進(jìn)制數(shù),正確的 mode 值
?>

改進(jìn)遞歸文件模式@ infosoft ....,這是一個(gè)小短,應(yīng)處理的Linux文件系統(tǒng)的所有文件類(lèi)型。這個(gè)可以批量更改文件或目錄的權(quán)限
復(fù)制代碼 代碼如下:

<?php
function chmodr($path, $filemode) {
if (!is_dir($path))
return chmod($path, $filemode);
$dh = opendir($path);
while (($file = readdir($dh)) !== false) {
if($file != '.' && $file != '..') {
$fullpath = $path.'/'.$file;
if(is_link($fullpath))
return FALSE;
elseif(!is_dir($fullpath) && !chmod($fullpath, $filemode))
return FALSE;
elseif(!chmodr($fullpath, $filemode))
return FALSE;
}
}
closedir($dh);
if(chmod($path, $filemode))
return TRUE;
else
return FALSE;
}
?>

如果你目錄太多的話可以用
復(fù)制代碼 代碼如下:

<?php
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($pathname), RecursiveIteratorIterator::SELF_FIRST);
foreach($iterator as $item) {
chmod($item, $filemode);
}
?>

這段代碼來(lái)修改目錄的權(quán)限
哈哈,我們不只是講chmod簡(jiǎn)單語(yǔ)法,而且還做了復(fù)雜的關(guān)于chmod使用實(shí)例

說(shuō)明
bool chmod ( string $filename , int $mode )
嘗試將 filename 所指定文件的模式改成 mode 所給定的。

注意 mode 不會(huì)被自動(dòng)當(dāng)成八進(jìn)制數(shù)值,而且也不能用字符串(例如 "g+w")。要確保正確操作,需要給 mode 前面加上 0:

mode 參數(shù)包含三個(gè)八進(jìn)制數(shù)按順序分別指定了所有者、所有者所在的組以及所有人的訪問(wèn)限制。每一部分都可以通過(guò)加入所需的權(quán)限來(lái)計(jì)算出所要的權(quán)限。數(shù)字 1 表示使文件可執(zhí)行,數(shù)字 2 表示使文件可寫(xiě),數(shù)字 4 表示使文件可讀。加入這些數(shù)字來(lái)制定所需要的權(quán)限。有關(guān) UNIX 系統(tǒng)的文件權(quán)限可以閱讀手冊(cè)“man 1 chmod”和“man 2 chmod”。
復(fù)制代碼 代碼如下:


<?php
// Read and write for owner, nothing for everybody else
chmod("/somedir/somefile", 0600);

// Read and write for owner, read for everybody else
chmod("/somedir/somefile", 0644);

// Everything for owner, read and execute for others
chmod("/somedir/somefile", 0755);

// Everything for owner, read and execute for owner's group
chmod("/somedir/somefile", 0750);
?>

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

Note: 當(dāng)前用戶指的是執(zhí)行 PHP 的用戶。很可能和通常的 shell 或者 FTP 用戶不是同一個(gè)。在大多數(shù)系統(tǒng)下文件模式只能被文件所有者的用戶改變。


Note: 本函數(shù)不能作用于遠(yuǎn)程文件,被檢查的文件必須通過(guò)服務(wù)器的文件系統(tǒng)訪問(wèn)。

Note: 當(dāng)安全模式打開(kāi)的時(shí)候,PHP 會(huì)檢查所操作的文件是否和正在執(zhí)行的腳本具有相同的 UID (所有者)。要注意的是,不能修改 SUID,SGID 和 sticky bits。

相關(guān)文章

最新評(píng)論