Выполняет команду через командную оболочку и возвращает вывод в виде строки

# shell_exec

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

shell_exec — Выполняет команду через командную оболочку и возвращает вывод в виде строки

### Описание

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() - Экранирует метасимволы командной строки

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