exec python в проблемах с php

В php-коде exec('python file.py 1 2',$result);

результат $ дает мне код внутри файла .py, но мне нужен вывод из печати. Предположим, что file.py выполняет дополнительную работу.

var_dump($result) -> import sys print int(sys.argv[1]) + int(sys.argv[2])

вместо var_dump($result) -> 3

Также возникла эта проблема при использовании exec('php file.php 1 2',$result).

safe_mode уже выключен


person Runicer    schedule 12.11.2012    source источник


Ответы (2)


Вы должны рассказать больше о платформе, на которой вы пытаетесь выполнить скрипт.

Возвращаясь к вопросу, я предполагаю, что вы неправильно указали путь к интерпретатору Python - попробуйте что-то вроде этого: exec('C:\\python27\\python.exe file.py 1 2',$output);

person d33tah    schedule 12.11.2012
comment
Платформа моей системы — Linux SUSE s390x python --version -> Python 2.6 Для языка компиляции, такого как exec('java или gcc или g++ ....',$output) выдается вывод из println printf - person Runicer; 13.11.2012

$value = exec('python /var/www/neptenderapp/upload/hough.py ' . $_FILES["file"]["name"]); Последний вывод вашего скрипта Python будет отправлен как значение этой переменной $value. При выполнении скрипта Python вы можете указать полный путь к скрипту Python в команде php exec, а также выполнить os.chdir('/var/www/upload') в начале вашего скрипта Python. Если у вас есть какие-либо проблемы, посетите один раз, этот ссылка, где я задокументировал, как решил свою проблему, похожую на вашу. Если возникнет дальнейшая проблема, продолжайте спрашивать здесь дополнительные ответы.

person hlkstuv_23900    schedule 25.07.2014