通过 shell 执行命令并将完整的输出以字符串的方式返回

# shell_exec

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

shell_exec — 通过 shell 执行命令并将完整的输出以字符串的方式返回

### 说明

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

本函数同执行运算符。

> 注意:

> 在 Windows 上，底层管道以文本模式打开，这可能导致函数无法进行二进制输出。考虑使用 popen() 避免这种情况。

### 参数

`command`

  要执行的命令。

### 返回值

string 包含已执行命令的输出，如果无法建立管道，则为 `false`，如果发生错误或者命令不产生输出则为 `null`

> 注意:

> 当进程执行过程中发生错误，或者进程不产生输出的情况下，都会返回 `null`。使用本函数无法检测执行是否成功。当需要访问程序退出代码时，应使用 exec()。

### 错误／异常

无法建立管道时会产生 `E_WARNING` 级别的错误。

### 示例

示例 #1 shell_exec() 示例

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

### 参见

- exec() - 执行一个外部程序
- escapeshellcmd() - shell 元字符转义

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