использование proc_open для обработки потока в PHP
При использовании exc () в php может быть полезно также проверить stderr в случае ошибок. При использовании Php: // stderr является опцией, Proc_open предоставляет комплексный подход для обработки потоков как Stderr, так и Stdout отдельно. $ descriptorspec = [ 0 => ["труба", "r"], // stdin 1 => ["труба", "w"], // stdout 2 => ["труба", "w"], // stderr ]; // выполнить команду $ process = proc_open ('./ test.sh', $ descriptorspec, $ pipes, dirname (__ file__), null); // Читать из выходных потоков $ stdout = Stream_get_contents ($ pipes [1]); Fclose ($ pipes [1]); $ stderr = Stream_get_contents ($ pipes [2]); Fclose ($ pipes [2]); // выводить результаты Echo "stdout: \ n"; var_dump ($ stdout); Echo "stderr: \ n"; var_dump ($ stderr);
. Используя Proc_open и назначенные дескрипторы потока, вы можете эффективно отделить и захватить вывод от ваших команд PHP, позволяя вам соответствующим образом обрабатывать ошибки и другие выходы.
]Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3