при попытке запустить скрипт powershell, используя $out = shell_exec('powershell.exe -command C:\xampp\htdocs\web\ping.ps1 < NUL');
echo $out;
зависает и замечание сделано, страница просто продолжает загружаться,
это мой простой сценарий
ping 8.8.8.8 -t
я использовал эту команду в powershell, чтобы сначала разрешить выполнение скриптов,
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
но ничего не меняется.
Мне нужна помощь, как выполнить сценарии powershell с помощью php?
Это происходит потому, что тег -t дает командной строке команду продолжить пинг до ее прерывания.
Постоянная загрузка — это php, выполняющий сценарий power shell и ожидающий остановки указанного сценария, прежде чем продолжить. Потому что ваш сценарий Power Shell никогда не останавливается, пока вы не уйдете со страницы. Он будет постоянно загружаться
Таким образом, прерывания будут php-памятью, максимизируемой и терпящей неудачу. Или пользователь уходит со страницы, которая останавливает выполнение. Пожалуйста ознакомтесь
Я бы порекомендовал использовать счетчик, а затем захват ввода после выполнения
Других решений пока нет …