chmod

(PHP 3, PHP 4 , PHP 5)

chmod -- ファイルのモードを変更する

説明

int chmod ( string filename, int mode)

filenameで指定されたファイルのモードを modeで指定したものに変更しようと試みます。

modeは自動的には8進数と見なされないので 注意して下さい。このため、("g+w"のような)文字列は正常に動作しませ ん。意図した操作を行うには、modeの前にゼロ (0)を付ける必要があります。

chmod ("/somedir/somefile", 755);   // 10 進数; おそらく間違い
chmod ("/somedir/somefile", "u+rwx,go+rx"); // 文字列; 正しくない
chmod ("/somedir/somefile", 0755);  // 8 進数; 正しいモードの値

mode引数は3つの8進法による数値で構成され、 所有者自信、所有者が属するグループ、その他のユーザー、の順で アクセス制限を設定します。一つ一つの数字はそのターゲットに対し 許可を与えます。1は実行権限、2はファイルに対する書き込み権限、 4はファイルに対する読み込み権限を与えます。 必要な権限にあわせ数値を加算してください。 許可モードに関する詳細はUNIXシステムの'man 1 chmod' や 'man 2 chmod' をご覧ください。

<?php
// 所有者に読み込み、書き込みの権限を与え、その他には何も許可しない。
chmod ("/somedir/somefile", 0600);

// 所有者に読み込み、書き込みの権限を与え、その他には読み込みだけ許可する。
chmod ("/somedir/somefile", 0644);

// 所有者に全ての権限を与え、その他には読み込みと実行を許可する。
chmod ("/somedir/somefile", 0755);

// 所有者に全ての権限を与え、所有者が属するグループに読み込みと実行を許可する。
chmod ("/somedir/somefile", 0750);
?>

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

注意: The current user is the user under which PHP runs. It is probably not the same user you use for normal shell or FTP access. カレントのユーザーはPHPを実行しているユーザーです。 これは普通のシェルやFTPアクセスでのユーザーとはたいて違います。

注意: この関数では、 リモートファイルを 使用することはできません。これは、処理されるファイルがサーバーの ファイルシステムによりアクセスできる必要があるためです。

chown()およびchgrp() も参照下さい。

注意: この関数はWindows環境にはまだ実装されていません。