Я пытаюсь использовать PHP exec () или system () (или любую другую подобную функцию) для запуска пакетного файла, но я не могу заставить их что-либо вернуть.
Самый простой пример, который я видел, это то, что ничего не выводит:
<?php
echo system('dir');
?>
Сценарий выполняется на компьютере с Windows XP на IIS с установленным PHP, и я также пробовал его на моей учетной записи общего хостинга под управлением Windows 2003 Server / IIS.
Кто-нибудь может подсказать, что мне нужно сделать, чтобы это работало, или предоставить какие-либо команды, которые я могу использовать для устранения неполадок?
Приветствия
Tom
Редактировать: второй пример
Основываясь на ответе pavun_cool, я попробовал следующее:
<?php
$last_line = system('dir', $retval);
echo 'last_line '.$last_line.'<br/> retval '.$retval;
?>
Вывод:
last_line
retval -1
Редактировать: третий пример
На основе Маноса Дилаверакиса я попробовал следующий код
<?php
exec('dir', $response);
foreach($response as $line) {
echo $line . "<br>";
}
?>
Вывод:
<br>
т.е. пустая строка при отображении в браузере.
Также, глядя на php.ini
, следующая строка (которая предположительно могла бы отключить эти функции) пуста:
disable_functions =
У кого-нибудь есть еще предложения или что-нибудь еще, что я могу попробовать?