У меня есть работающее веб-приложение php. Я работаю над Win 7 и использую Apache.
Теперь я пытаюсь выполнить эту команду Java в PHP и отобразить результат на сайте:
exec("java -jar C:\webroot\ipt\themes\ipt\views\site\Skills.jar 5 10 5.5 10 2 5 8 3 10 6 11 2 15 4", $output);
for ($index = 0; $index < count($output); $index++) {
echo $output[$index]." ";
}
Однако $ output — это пустой массив — без вывода.
Я не получаю никакой ошибки или сбоя. Вывод — только основная строка.
Я попытался ввести эту же команду в cmd, и она работает как надо — возвращая ожидаемый результат.
Поэтому я попробовал другую команду, чтобы увидеть, если это не проблема с exec (), поэтому я попытался «ipconfig», который отображал результаты на сайте без ошибок.
Из-за этого я думаю, что это как-то связано с PHP или Apache (или с обоими).
Я искал похожие проблемы других людей и пытался:
Поэтому я хочу спросить, не знает ли кто-нибудь решение этой проблемы.
Спасибо
Убедитесь, что вы можете без проблем запустить эту команду в консоли напрямую.
Измени свой exec
к следующему:
exec("java -jar C:\\webroot\\ipt\\themes\\ipt\\views\\site\\Skills.jar 5 10 5.5 10 2 5 8 3 10 6 11 2 15 4 2>&1", $output);
Других решений пока нет …