环境:windows Server2008+Apache+php+MySQL

问题:shell可以执行成功,但是php调用python就不行了

开发一个项目时需要用php调用python命令,如下:

$cmd='pythonmain.py-u';exec($cmd,$res);

结果$res什么返回值都没有,这就尴尬了。。。于是排错,,apache的error_log是个好东西啊~~出现什么错误会显示到log文件中,当然,也可以在命令后写2>&1使错误回显在$res中,就像这样:

$cmd='pythonmain.py-u2>&1';

错误显示为python不是内部或外部命令,这应该是环境变量问题,,总之经过好久的脑抽才找到解决方法:

虽然配置了系统环境变量,但是php和shell应该不是一个库,所以解决方法很简单,将命令改成如下即可。

$cmd='c:/python27/pythonmain.py-uhttp://www.example.com''

其中c:/python27是自己的python所在的路径

总结:每次解决了问题时都觉得自己是个智障。。在简单的问题上花费了太多时间,解决问题可能不会花费太多时间,花费时间的是找到问题的原因。就酱,希望自己更强大,写出有技术含量的东西。