Это работает в моей системе Windows 10, но я очень скептически отношусь к тому, будет ли это работать также в Linux и macOS. Я хочу убедиться, что это так, потому что невероятно полезно иметь возможность запускать команды для открытия различных приложений из «веб-панели управления» localhost. Я делаю это все время, но у меня нет Ma c или Linux P C для тестирования.
Шаги для воспроизведения:
Убедитесь, что вы используете встроенный PHP веб-сервер, а не что-то еще.
Создайте файл с именем test.php
с этим содержимым и поместите его в свой WWW root:
if (isset($_GET['run']))
shell_exec('winver');
echo '<p><a href="?run=1">test me</a></p>';
Очевидно, измените часть «winver» на команду, которую понимает macOS или Linux. Пока он при запуске вызывает какое-то окно GUI.
Go на
http://127.0.0.1/test.php
и щелкните гиперссылку. Теперь он должен запустить указанную команду и, таким образом, отобразить на экране какое-то поле GUI.
Это происходит в macOS и Linux, или это «счастливое совпадение», которое работает на Windows, но не предназначено?