Страницы

Поиск по вопросам

суббота, 15 февраля 2020 г.

Запустить python скрипт из php и получить результат обратно в php

#php #python


Всем привет.
Интересует такой вопрос.
Каким образом можно из php скрипта запустить python скрипт, обработать в нем некоторые
данные, и получить результат работы скрипта и данные обратно в php ?
    


Ответы

Ответ 1



В зависимости от того, что вы делаете, system () или popen (). Используйте system (), если код Python не имеет выхода, или если вы хотите, чтобы выход скрипта Python переходил непосредственно в браузер. Используйте popen (), если вы хотите записать данные на стандартный ввод скрипта Python или прочитать данные из стандартного вывода сценария Python в php. Popen () позволит вам читать или писать, но не то, и другое. Если вы хотите оба, проверьте proc_open (), но с двухсторонней связью между программами вы должны быть осторожны, чтобы избежать взаимоблокировок, где каждая программа ждет другого, чтобы что-то сделать. Если вы хотите передать данные, предоставленные пользователем, в сценарий Python, то самое важное, о чем нужно заботиться, - это командная инъекция. Если вы не будете осторожны, ваш пользователь может отправить вам такие данные, как «; evilcommand»; И заставить вашу программу выполнять произвольный код. Escapeshellarg () и escapeshellcmd () могут помочь с этим, но лично мне нравится удалять все, что не является известными хорошими данными, используя что-то вроде Preg_replace ('/ [^ a-zA-Z0-9] /', '', $ str) Источник:

Ответ 2



$result = system('python myscript.py myargs', $retval); function.system.php $python = shell_exec('C:\Python27\python.exe e:\xampp\htdocs\scripts\test.py'); function.shell-exec.php (функция недоступна в безопасном режиме)

Комментариев нет:

Отправить комментарий