shell — Как сделать так, чтобы скомпилированная программа выводила вывод на веб-страницу PHP

У меня есть программа, которая выводит данные в командной строке.

MyProgram -d «02/02016/12: 00-03 / 02/2016/12: 00»

Я просто пытаюсь отобразить результаты откомпилированной c-программы на Linux на веб-странице. Есть дополнительные флаги помимо файла (-f имя файла) и даты (-d «диапазон времени и даты»). Для программы доступны другие флаги команд оболочки, но они не влияют на формат отображения самого текста.

Это приводит к выводу в формате командной строки, подобному следующему. Фактические результаты здесь не имеют большого значения. Он отображает список или записи в формате, аналогичном следующему на серверной части.

Я пытаюсь отобразить результаты ниже на веб-странице PHP переднего плана.

------------------------------------------------------------------------------------
<record_id_number_here> <date_stamp_tex><someflag_value><event_type_number>
<Some event status text information>
-----------------------------------------------------------------------------------

Вещи, которые я пробовал, см. Ниже в разделе test.PHP. Я ищу только один рабочий путь.

test.php

<?php
echo "ran as user:".exec("whoami");
echo "test1<br />";
echo exec("MyProgram -f TestLogBinaryFileDate");
echo "test2<br />";
echo system("MyProgram -f TestLogBinaryFileDate");
echo "test3<br />";
echo popen("MyProgram -f TestLogBinaryFileDate");
echo "test4<br />";
echo passthru("MyProgram -f TestLogBinaryFileDate");
echo "tests calls complete";
?>

Каждая попытка получить результаты от каждой из этих функций не мешала PHP продолжать работу и не отображала текст записи данных, который должен был быть.

MyProgram Я даже пытался установить пользователя Apache в качестве владельца приложения командной строки, скомпилированного в файл, и даже переместил приложение в корневой каталог веб-сайта, где находится веб-страница test.php.

Среды Linux (Fedora 22 или Red Hat Linux в будущем), Mariadb, PHP 5.6.8

Я не сомневаюсь, что буду обновлять это с большей информацией о том, что работало и не работало.

Я вижу посты, в которых говорится о директории safemode, это не работает, так как safemode PHP был удален в 5.4 и устарел в 5.3, поэтому безопасный режим не должен быть проблемой.

1

Решение

http://php.net/manual/en/function.shell-exec.php

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

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector