导航:首页 > 编程语言 > php调用python文件

php调用python文件

发布时间:2022-07-27 13:55:00

A. 程序小白,问一下php网站想要运行python文件需要怎么做

关于PHP调用Python数据传输问题
这是以前大学时做项目出现的问题,现在把它挪上来,希望给遇到问题的未来大佬给出一些小的思路,请大佬们不要大意的帮我改正,如果出现问题或者有更好的解决方法,希望大家可以给出,谢谢!
以前小组开展项目实训,我们小组选择的是大数据分析,其中有一个用python进行文本分析之后对用户输入的数据进行分析,然后输出对应的岗位及其他。要求是前端将文本要求传到后台php,php调用python程序处理,再将数据传给php,然后再传到前端,进行下一步处理。结果python传回的数据,在前端显示乱码了,而且得出的结果与单独运行python代码完全不同,一句话,就是php调用python程序期间出错了。
我很认真的检查了好几遍,确定自己php和python所有的编码都是用的utf-8编码,所以这一点是毋庸置疑的,那么问题究竟出在哪呢?php调用python语句是
$job = "有责任心,擅长JAVA";//传入的文本信息
$area = 'E:/text/sim_str.py';//Python程序的地址
$cmd = system("python3 $area 2>C:/Users/Administrator/Desktop/2.txt $job",$ret);//2>是将报错内容定位到这个文件,$ret是一个返回参数,0是正常,1是出错。

最后经过多次的测试,我发现传过去时对文字的编码出现了问题,应该不是UTF-8编码了。有位大神说,这是因为windows系统会自己对传输的信息进行再次编码。然后 我想直接改编码,结果这个python3编码改变出现了问题。最后我的解决方案是不通过系统传送,而是直接通过第三方数据库。双方都调用数据库。一切都可以解决了。
PS:后来又遇见过这种问题,我将python代码进行了修改,让它最终可以直接只传递数字,再在前端对数字进行判断。

B. php调用python时python可以一直运行吗

如果你有服务器权限的话直接exec命令调用python命令行就行了
php文件:test.php

123456

<?php exec("python hw.py",$array,$ret); echo("result: "); print_r($array); echo("return value: ".$ret);?>

py文件:hw.py(与php同一目录)

1

print ("Hello World");

php执行结果:
result: Array ( [0] => Hello World ) return value: 0

C. 如何实现在PHP中调用Python并获取运行结果

Python的import包含文件功能就跟PHP的include类似,但更确切的说应该更像是PHP中的require,因为Python里的import只要目标不存在就报错程序无法往下执行。要包含目录里的文件,PHP中只需要给对路径就OK。Python中则不同,下面来看看这个例子。

D. php调用python

py和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 他是按照每一行' '当作一个元素
但是passthru 则是你python里的print的原样输出

E. phpnow中如何调用python

PHP和Python/Ruby的运行机制有一个本质区别:PHP是每次HTTP请求过来以后,初始化全部资源(例如创建数据库链接、加载系统类库,创建缓存等等),处理完毕,释放全部资源,这不像Python/Ruby之类带有GC的脚本语言,Python/Ruby是初次启动的时候初始化资源,随后的请求就不必再次初始化资源了。

F. 如何在PHP服务器里运行python脚本

python环境在小鸟云云服务器装好后,就有一个idle工具,你找一下安装目录,自带的编辑器,在任意目录新建一个
aa.py
文件,用记事本和idle工具都行,输入print("hello
world"),如果你使用的是idle,直接按f5,就能查看结果,如果用记事本,打开cmd,进入这个目录,输入命令python
aa.py就出来结果了。

G. php 执行python脚本的时候 已经安装python模块能正常使用么

一般是环境变量问题,你的执行一个sh的set命令看看结果吧。
解决办法,在sh文件里面设置好环境变量再调用python脚本。

H. 怎么在php代码中调用python程序

py和php放在同一个目录下面some.py------------------------------------------#!/usr/bin/env python#-*- coding:utf-8 -*-import sysdef do_some(a):return "dosome:%s" % aif __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];pa

I. 如何用php通过root调用python文件控制树莓派的IO口

可以使用python制作api接口,然后php通过接口去进行相关的操作。这也是目前最完美的解决跨平台控制的方法。

阅读全文

与php调用python文件相关的资料

热点内容
linuxpython绿色版 浏览:429
怎么下载小爱同学音箱app 浏览:552
python占位符作用 浏览:76
javajdbcpdf 浏览:541
php网页模板下载 浏览:190
python试讲课pygame 浏览:407
安居客的文件夹名称 浏览:677
家里服务器如何玩 浏览:449
网站源码使用视频 浏览:746
stc89c52单片机最小系统 浏览:452
邮件安全证书加密 浏览:416
云服务器如何访问百度 浏览:279
常州电信服务器dns地址 浏览:839
用小方块制作解压方块 浏览:42
图像压缩编码实现 浏览:68
特色功能高抛低吸线副图指标源码 浏览:71
西方哲学史pdf罗素 浏览:874
python最常用模块 浏览:184
温州直播系统源码 浏览:112
程序员在上海买房 浏览:384