我从PHP调用python脚本。
python程序必须根据传递给它的参数返回一些值。
这是一个示例python程序,它将为您提供我当前正在做的事情的基本概念:
#!/usr/bin/python
import sys
#get the arguments passed
argList = sys.argv
#Not enough arguments. Exit with a value of 1.
if len(argList) < 3:
#Return with a value of 1.
sys.exit(1)
arg1 = argList[1]
arg2 = argList[2]
#Check arguments. Exit with the appropriate value.
if len(arg1) > 255:
#Exit with a value of 4.
sys.exit(4)
if len(arg2) < 2:
#Exit with a value of 8.
sys.exit(8)
#Do further coding using the arguments------
#If program works successfully, exit with a value of 0
从上面的代码中可以看出,我的基本目标是
目前我已经使用了“sys.exit(n)”来实现这一目的。
我正确使用sys.exit,还是需要使用其他东西?
还有PHP中存在哪种方法,以便我可以从python访问返回代码?
很抱歉这个长期的问题,但希望它能帮助你理解我的困境
非常感谢
答案 0 :(得分:10)
在PHP中,您可以使用exec
执行命令并获取返回码。
exec
的{{3}}表示第三个参数是一个存储返回码的变量,例如
exec('python blibble.py', $output, $ret_code);
$ret_code
将是shell返回码,$output
是打印到std的文本行数组。输出
这似乎适用于您所描述的返回代码,即0表示成功,&gt; 0代表各种类型的错误。
答案 1 :(得分:0)
这是正确使用exit()。另见:http://docs.python.org/library/sys.html