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

# shell_exec

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

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

### 説明

function 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() - シェルのメタ文字をエスケープする

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open