【背景】
别人的问题:
请问一下你熟悉php对python的调用吗? 需要从Php向python传递参数 |
但是之前没折腾过,现在去看看。
【折腾过程】
1.google搜:
php call python
找到一堆帖子。
2.参考:
executing Python script in PHP and exchanging data between the two
说是可以通过:
公共语言格式(common language formats),去实现,然后利用标准输入stdin和标准输出stdout去通信。
具体代码就不贴了。
有空去试试示例代码,看起来应该是可以的。
3.另外,别人也提到了,可以用那个RPC的东西。
其中Python中对应的rpc的库有:
4.这里:
提到了用:
- 如果Python脚本没有输出,或者你想要Python脚本的输出是直接输出到浏览器的:用system()
- 如果你想要通过标准输入stdin去输入数据到Python中,或者是从Python的标准输出stdout中读取数据:用popen()
- popen只能读或写,不能同时实现两种效果(既读也写)
- 如果既要读也要实现写,则用:proc_open()
- 自己使用时,注意不要出现死锁了。
- 很明显,此处的你,就是这种情况,所以推荐用这个popen()
【总结】
根据你的情况,去用popen应该就够了。
关于具体如何使用,去看官网api说明:
http://php.net/manual/en/function.popen.php
然后把popen的参数,改为对应的python文件的路径,应该就可以了。
自己多试试吧。
转载请注明:在路上 » 【整理】PHP中执行调用Python代码