shell_exec

(PHP 4, PHP 5, PHP 7, PHP 8)

shell_execシェルによりコマンドを実行し、文字列として出力全体を返す

説明

shell_exec(string $command): string|false|null

この関数は バッククォート演算子 と等価です。

注意:

Windows では、パイプがテキストモードでオープンされるため、 この出力を使ったバイナリの出力が失敗する可能性があります。 このような場合は、popen() の利用を検討してください。

パラメータ

command

実行するコマンド

戻り値

実行されたコマンドからの出力を文字列で返します。 パイプがオープンできなかった場合は false を返します。 エラーが発生したり、コマンドが何も出力しなかった場合は null を返します。

注意:

この関数は、エラーが発生した場合だけでなくプログラムが何も出力しなかった場合にも null を返します。 そのため、実行に失敗したかどうかをこの関数では判断できません。 プログラムの終了コードを調べる必要があるときには exec() を使いましょう。

エラー / 例外

パイプがオープンできなかった場合は E_WARNING レベルの警告が発生します。

例1 shell_exec() の例

<?php
$output 
shell_exec('ls -lart');
echo 
"<pre>$output</pre>";
?>

参考

  • exec() - 外部プログラムを実行する
  • escapeshellcmd() - シェルのメタ文字をエスケープする

関連キーワード:  実行, 出力, コマンド, シェル, exec, プログラム, 関数, shell, パイプ, 発生