関数の概要
PHPの is_executable 関数は、指定したファイルが実行可能かどうかを判定するための関数です。ファイルが実行権限を持っていれば true を返し、そうでなければ false を返します。サーバー上のスクリプトやバイナリの実行可否を確認する際に便利です。
パラメータの説明
filename(string): 実行可能かどうかを調べたいファイルのパスを指定します。
戻り値
is_executable 関数は、ファイルが実行可能であれば true を返します。実行不可、またはファイルが存在しない場合は false を返します。
使用例
基本的な使い方
$file = '/path/to/your/script.sh';
if (is_executable($file)) {
echo "ファイルは実行可能です。";
} else {
echo "ファイルは実行不可です。";
}
この例では、指定したファイルが実行可能かどうかを判定し、その結果を表示しています。
存在しないファイルをチェックする例
$file = '/path/to/nonexistent-file.sh';
if (is_executable($file)) {
echo "ファイルは実行可能です。";
} else {
echo "ファイルが存在しないか、実行不可です。";
}
存在しないファイルに対して is_executable を使うと false が返りますので、その旨のメッセージを出すことが可能です。
ディレクトリに対して使う例
$dir = '/usr/bin';
if (is_executable($dir)) {
echo "ディレクトリは実行可能(アクセス可能)です。";
} else {
echo "ディレクトリは実行不可か存在しません。";
}
ファイルだけでなくディレクトリに対しても実行可能かどうか確認できます。ディレクトリの場合は、「ディレクトリにアクセスできるか」という意味で使われます。
関連する関数
file_exists– ファイルやディレクトリが存在するかチェックするis_readable– ファイルやディレクトリが読み込み可能かチェックするis_writable– ファイルやディレクトリが書き込み可能かチェックする
まとめ
is_executable はファイルやディレクトリが実行可能かどうかを簡単に確認できる便利な関数です。特にスクリプトの実行前チェックや権限管理の確認に役立ちます。ファイルの存在自体は file_exists、読み書き権限は is_readable や is_writable と組み合わせると実務でも効果的に使えます。
