chmod() 関数はファイルモードを変更します。 chmod — ファイル モードを変更します。成功した場合は TRUE を返し、それ以外の場合は FALSE を返します。
構文
chmod(file,mode)
パラメータ | 説明 |
---|---|
ファイル | 必須。チェックするドキュメントを指定します。 |
モード |
オプション。新しい権限を指定します。 mode パラメータは 4 つの数字で構成されます:
可能な値 (複数の権限を設定するには、以下の数字を合計します):
|
コードは次のとおりです:
<?php chmod("/somedir/somefile", 755); // 十进制数,可能不对 chmod("/somedir/somefile", "u+rwx,go+rx"); // 字符串,不对 chmod("/somedir/somefile", 0755); // 八进制数,正确的 mode 值 ?>
改良された再帰ファイル モード @ infosoft....、これは少し短いですが、Linux のすべてのファイル タイプを処理する必要があります。 ファイルシステム。これにより、ファイルまたはディレクトリのパーミッションを一括変更できます
コードは次のとおりです:
<?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; } ?>
ディレクトリが多すぎる場合は、次を使用できます
コードは次のとおりです:
<?php $iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($pathname), RecursiveIteratorIterator::SELF_FIRST); foreach($iterator as $item) { chmod($item, $filemode); } ?>
このコードは変更するために使用されますディレクトリの権限
以上がphp chmod() 関数とファイルディレクトリのアクセス許可の一括変更の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。