【发布时间】:2016-11-22 16:52:11
【问题描述】:
我有一个名为 Rainbow.py 的 Python 脚本。我可以选择使用参数运行它。从命令行
python rainbow.py、python rainbow.py 4 效果很好。当我从 php 调用这个脚本时,我无法传递参数。
我试过了:
$argument=4;
exec("python rainbow.py 4");
exec("python rainbow.py $argument");
exec("python rainboy.py .$argument");
它们使代码像没有有效参数一样运行。 (我在我的python代码中使用duration=int(sys.argv[1],脚本需要一段时间后停止,从php调用时,默认持续时间始终处于活动状态)
我试过了
$argument="4"
也是,没用。 你能告诉我有什么问题吗?我怎样才能通过这个论点?我对python很有信心,但我是个php新手。
我的部分php代码:
$argument="2";
echo "printing line <br>";
exec("python rainbow.py $argument");//duration option does not work
我的python代码的一部分:
duration=10
try:
if sys.argv[1]!=None:
print "arg found!"
duration=int(sys.argv[1])
except: pass
print "duration:",duration
从 php 调用 python 时,我看不到持续时间打印出来,但从 LED 可以清楚地看到持续时间总是 10 秒
【问题讨论】:
-
您确定代码示例中对 exec 的第二次调用不起作用吗?
-
是的,我是肯定的。
标签: php python raspberry-pi parameter-passing