検索
ホームページphp教程php手册PHPのchmod関数とファイルディレクトリのパーミッションの一括変更

PHPのchmod関数とファイルディレクトリのパーミッションの一括変更

Jun 13, 2016 pm 12:16 PM
chmodfilemodephpそして改訂関数パラメータバッチ書類権限目次文法

構文
chmod(file,mode) パラメータ 説明
file 必須。チェックするドキュメントを指定します。
モードはオプションです。新しい権限を指定します。
モードパラメータは 4 つの数字で構成されます:
最初の数字は常に 0
2 番目の数字は所有者の権限を指定します
2 番目の数字は所有者が属するユーザーグループの権限を指定します
4 番目の数字は、他の全員の権限を指定します
可能な値 (複数の権限を設定するには、以下の数字を合計します):
1 - 実行権限
2 - 書き込み権限
4 -読み取り権限
簡単な例を見てみましょう

コードをコピーします コードは次のとおりです。


php
chmod("/somedir/somefile", 755); // 10 進数、間違っている可能性があります
chmod("/somedir/somefile", "u rwx,go rx"); // 文字列、間違っています
chmod("/somedir/somefile", 0755); // 8 進数、正しいモード値
?>


infosoft で再帰的ファイル モードが改善されました ....少し短いので、Linux ファイル システム上のすべてのファイル タイプを処理できるはずです。これにより、ファイルまたはディレクトリのアクセス許可を一括変更できます

コードをコピー コードは次のとおりです:


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


ディレクトリが多すぎる場合は、 use



コードをコピー コードは次のとおりです:

$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($pathname), RecursiveIteratorIterator::SELF_FIRST);
foreach($iterator as $item) {
chmod($item, $filemode)


このコードはディレクトリのアクセス許可を変更します
はは、chmod の単純な構文について説明しただけでなく、chmod の使用例についての複雑な手順も作成しました

bool chmod ( string $filename , int $mode )
filename で指定されたファイルのモードを、mode で指定されたモードに変更してみます。

モードは自動的には 8 進数値として扱われないことに注意してください。また、文字列 (「g w」など) にすることもできません。正しい動作を保証するには、モードの前に 0 を追加する必要があります:

モード パラメーターには、所有者、所有者のグループ、全員のアクセス制限を順番に指定する 3 つの 8 進数が含まれます。各部分は、必要な権限を追加することで計算できます。数値 1 はファイルを実行可能にし、数値 2 はファイルを書き込み可能にし、数値 4 はファイルを読み取り可能にします。これらの数字を追加して、必要な権限を指定します。 UNIX システムでのファイル権限については、マニュアル「man 1 chmod」および「man 2 chmod」を参照してください。



コードをコピー

コードは次のとおりです: // 読み取りと書き込み所有者にとっては、他の人にとっては何もありません

chmod("/somedir/somefile", 0600);

// 所有者にとっては読み取りと書き込み、他の人にとっては読み取り
chmod("/somedir/somefile" ", 0644 );

// 所有者のためのすべて、他の人のために読み取りおよび実行
chmod("/somedir/somefile", 0755);

// 所有者のためのすべて、読み取り所有者のグループに対して実行します
chmod("/somedir/somefile", 0750);


成功した場合は TRUE を返し、失敗した場合は FALSE を返します。

注: 現在のユーザーとは、PHP を実行しているユーザーを指します。ほとんどの場合、通常のシェルまたは FTP ユーザーと同じではありません。ほとんどのシステムでは、ファイルのモードを変更できるのは、そのファイルを所有するユーザーだけです。


注: この機能はリモート ファイルでは使用できません。チェックされるファイルには、サーバーのファイル システムを介してアクセスする必要があります。

注: セーフ モードがオンになっている場合、PHP は操作されているファイルが実行されているスクリプトと同じ UID (所有者) を持つかどうかを確認します。 SUID、SGID、およびスティッキー ビットは変更できないことに注意してください。
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境