Выводит из exec() в Windows (PHP)?

#php #exec

#php #exec

Вопрос:

похоже, не удается получить выходные данные из команды exec () в PHP, ОС: Windows XP

вот используемый код: exec(«echo %username%»,$output);

используя print_r($output), который возвращает 1;

Ответ №1:

echo это не программа в Windows, которую вы можете вызвать. Это функция, специально предоставляемая командным процессором (т.Е. cmd.exe ).

Если вам нужно имя пользователя таким образом, не запускайте оболочку. Используйте getenv вместо этого.

(Если по какой-то причине вы хотели использовать echo , вам нужно было бы сделать cmd.exe /c echo Whatever . Также обратите внимание, что проверка кода возврата, а также выходных данных может быть полезной)