很多站长朋友们都不太清楚php不调用Python,今天小编就来给大家整理php不调用Python,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php调用python 2、 php调用python,无法使用numpy等模块 3、 php起步python没反应,脚本不执行是什么原因 php调用pythonpy和php放在同一个目录下面
some.py
------------------------------------------
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import sys
def do_some(a):
return "dosome:%s" % a
if __name__ == '__main__':
a = sys.argv[1]
if a:
T = do_some(a)
print T
-------------------------------------------
t.php
<?php
$k = $_REQUEST['k'];
if (!empty($k))
{
$k = trim($k);
// $a = array();
// exec('python ./some.py '.$k, $a);
// echo $a[0];
passthru('python ./some.py '.$k);
}
然后浏览器里面输入
浏览器会返回dosome:test
被我注释掉的代码也可以用来替代passthru
里面的$a 用来捕获输出 不过束腰注意的是 这里的arry 他是按照每一行'\r\n'当作一个元素
但是passthru 则是你python里的print的原样输出
php调用python,无法使用numpy等模块一般服务器不可能给php执行shell脚步权限的,危险性太大。
再比如,如果以后Python与PHP不在一台服务器上怎么办?
所以,可以考虑通过api接口传递参数。
php起步python没反应,脚本不执行是什么原因先把if os.geteuid那段替换成一个简单的print “1111111111”,看看是不是能正常输出
重新看了下你的代码。。。这句
system("python /var/www/pythonmoudle/testphp.py,$return_val");
应该是这样
system("python /var/www/pythonmoudle/testphp.py“,$return_val);
注意引号位置!
关于php不调用Python的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php不调用Python php调用其他php函数的详细内容...