Посмотрите документацию для PHP: exec :
Возвращаемые значения
Последняя строка из результата команды. (...)
То есть exec()
возвращает не возвращаемое значение команды, а последнюю строку ее вывода, т. Е. Все, что команда выводит на свой стандартный вывод.
Чтобы получить возвращаемое значение, вы должны использовать аргумент return_var
.
return_var
Если присутствует аргумент return_var
..., то в эту переменную будет записан статус возврата выполненной команды.
Так что вам нужно изменить код на что-то вроде:
...
exec($cmd, $output, $return_var);
var_dump($return_var);
...
(И правильно указывать строковый литерал в присваивании $cmd
.)