浅析PHP与Python进行数据交互


Posted in Python onMay 15, 2018

最近,决定在一个项目用tp5进行APP接口开发,用Python做数据分析,然后这就面临一个问题:PHP和Python如何进行数据交互?

思路

我解决此问题的方法是利用了PHP的passthru函数来调用命令运行Python脚本。

代码

PHP代码

//php.php
<?php
$params = "value"; #传递给python脚本的入口参数 
$path="python python.py "; //需要注意的是:末尾要加一个空格
passthru($path.$params);//等同于命令`python python.py 参数`,并接收打印出来的信息 
?>

若存在多个参数,则参数之间以空格分开

Python代码

sys.argv[]用于获取到的PHP传入python的入口参数

//python.py
import sys 
params = sys.argv[1] #即为获取到的PHP传入python的入口参数
print(params);

若在Python中接收多个参数

params = sys.argv[1:]

若要从Python中返回多个值,需要将值写入元组中,然后通过json.dumps()转化为json,并进行打印,PHP中通过passthru可以获得Python脚本打印的json

import sys
import json

params = ('Google', 'Runoob', 1997, 2000);
json_str =json.dumps(params);
print(json_str);

另需要在PHP中passthru前加@,否则会报以下提示

Notice: Array to string conversion in php.php on line 6

输出

浏览器中输出值为value

效果等同于

> python python.py value
value //输出‘value'
Python 相关文章推荐
用Python编写一个国际象棋AI程序
Nov 28 Python
python数据结构之链表的实例讲解
Jul 25 Python
Python3中正则模块re.compile、re.match及re.search函数用法详解
Jun 11 Python
pthon贪吃蛇游戏详细代码
Jan 27 Python
python的schedule定时任务模块二次封装方法
Feb 19 Python
python函数修饰符@的使用方法解析
Sep 02 Python
使用python切片实现二维数组复制示例
Nov 26 Python
Python Opencv中用compareHist函数进行直方图比较对比图片
Apr 07 Python
python 图像插值 最近邻、双线性、双三次实例
Jul 05 Python
Python Selenium实现无可视化界面过程解析
Aug 25 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
Python爬虫进阶之爬取某视频并下载的实现
Dec 08 Python
Python使用min、max函数查找二维数据矩阵中最小、最大值的方法
May 15 #Python
django自带的server 让外网主机访问方法
May 14 #Python
Python中利用xpath解析HTML的方法
May 14 #Python
利用pyinstaller将py文件打包为exe的方法
May 14 #Python
django的登录注册系统的示例代码
May 14 #Python
django允许外部访问的实例讲解
May 14 #Python
运行django项目指定IP和端口的方法
May 14 #Python
You might like
php 无极分类(递归)实现代码
2010/01/05 PHP
thinkPHP线上自动加载异常与修复方法实例分析
2016/12/01 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
PHP设计模式之适配器模式原理与用法分析
2018/04/25 PHP
jQuery对象与DOM对象之间的转换方法
2010/04/15 Javascript
jQuery ajax serialize()方法的使用以及常见问题解决
2013/01/27 Javascript
Ext中下拉列表ComboBox组件store数据格式用法介绍
2013/07/15 Javascript
JS按字节截取字符长度实例
2013/11/20 Javascript
一个检测表单数据的JavaScript实例
2014/10/31 Javascript
jQuery实现的仿百度,仿谷歌搜索下拉框效果示例
2016/12/30 Javascript
微信小程序 JS动态修改样式的实现代码
2017/02/10 Javascript
nodejs中使用HTTP分块响应和定时器示例代码
2017/03/19 NodeJs
详解AngularJS1.x学习directive 中‘&amp; ’‘=’ ‘@’符号的区别使用
2017/08/23 Javascript
爬虫利器Puppeteer实战
2019/01/09 Javascript
详解微信小程序开发(项目从零开始)
2019/06/06 Javascript
vue-week-picker实现支持按周切换的日历
2019/06/26 Javascript
vue使用echarts实现水平柱形图实例
2020/09/09 Javascript
[35:26]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第三局
2016/02/26 DOTA
Python正则表达式使用经典实例
2016/06/21 Python
Python将图片转换为字符画的方法
2020/06/16 Python
详解python实现识别手写MNIST数字集的程序
2018/08/03 Python
在python中安装basemap的教程
2018/09/20 Python
python装饰器练习题及答案
2019/11/01 Python
简单介绍django提供的加密算法
2019/12/18 Python
html+css3实现的登录界面
2020/12/09 HTML / CSS
举例详解HTML5中使用JSON格式提交表单
2015/06/16 HTML / CSS
Giglio德国网上精品店:奢侈品服装和配件
2016/09/23 全球购物
预备党员党课思想汇报
2014/01/13 职场文书
家长建议怎么写
2014/05/15 职场文书
2015公务员年度考核评语
2015/03/25 职场文书
新年晚会开场白
2015/05/29 职场文书
科技馆观后感
2015/06/08 职场文书
公司考勤管理制度
2015/08/04 职场文书
一篇合格的广告文案,其主要目的是什么?
2019/07/12 职场文书
Python实现提取PDF简历信息并存入Excel
2022/04/02 Python
MySQL一劳永逸永久支持输入中文的方法实例
2022/08/05 MySQL