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

思路

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

实现

在PHP中调用命令运行Python脚本

//php.php

<?php

$params = "value"; #传递给python脚本的入口参数

$path="python python.py "; //需要注意的是:末尾要加一个空格

passthru($path.$params);//等同于命令`python python.py 参数`,并接收打印出来的信息

?>

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

在Python中接收PHP传入的参数

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

//python.py

import sys

params = sys.argv[1] #即为获取到的PHP传入python的入口参数

print(params);

若在Python中接收多个参数

params = sys.argv[1:]

从Python中返回参数

若要从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

效果

运行调用Python脚本的PHP文件,浏览器中输出值为Python打印的值。

更多PHP相关知识请关注我的专栏

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

思路

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

实现

在PHP中调用命令运行Python脚本

//php.php

<?php

$params = "value"; #传递给python脚本的入口参数

$path="python python.py "; //需要注意的是:末尾要加一个空格

passthru($path.$params);//等同于命令`python python.py 参数`,并接收打印出来的信息

?>

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

在Python中接收PHP传入的参数

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

//python.py

import sys

params = sys.argv[1] #即为获取到的PHP传入python的入口参数

print(params);

若在Python中接收多个参数

params = sys.argv[1:]

从Python中返回参数

若要从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

效果

运行调用Python脚本的PHP文件,浏览器中输出值为Python打印的值。

php和python交互-PHP与Python进行数据交互相关推荐

  1. python和stata_Python与Stata的数据交互

    Python与Stata的数据交互 最近拿到了Stata的船新版本--Stata16,就迫不及待地玩了两天.总的来说,Stata16不论在UI上,还是在功能上,都比之前的版本进步了许多. 特别值得一说 ...

  2. excel和matlab交互,Excel与Matlab的数据交互(精选5篇)

    Excel与Matlab的数据交互 假设列举十只股票,算其五日平均线,平均股价,标准差...等,如果用Excel Link的话,可将资料由Excel 传给Matlab处理,再将结果送回excel 中我 ...

  3. java后端与前端的交互_前端和后端数据交互的基本知识和常见方式

    一.首先了解前端,后端,数据三者的关系. 1.前端常常是是html,css,js三者的构成的页面的总称.运行在客户端.以浏览器为例. 2.后端常常是后端语言.比如php,java等写的一些脚本.来操作 ...

  4. Slog3_如何使用Python与Mysql进行数据交互

    ArthurSlog SLog-3 Year·1 Guangzhou·China July 9th 2018 自己的梦想需要你自己去实现 开发环境MacOS(High Sierra 10.13.5) ...

  5. 服务器终端输出,服务器与终端数据交互程序

    服务器与终端数据交互程序 服务器与终端数据交互程序,该系统可以作单机或联网使用.该系统可以配合ERP.SAP等系统完成盘点.调拨等工作任务的下载及上传.待配套的数据采集器终端程序完成相应的工作任务之后 ...

  6. 前后端数据交互——ajax(原生及jquery)

    目录 前后端数据交互--ajax 1. 介绍 2.原生ajax用法 3.jquery的ajax 4.ajax原理说明 前后端数据交互--ajax 1. 介绍 1.1 定义 Ajax(Asynchron ...

  7. Android 低功耗蓝牙开发(数据交互)

    Android 低功耗蓝牙开发(数据交互) 前言 正文 一.BluetoothGattCallback 1. onPhyUpdate 2. onPhyRead 3. onServicesDiscove ...

  8. django前端引用数据_「基于Python技术的智慧中医商业项目」Django前端网站篇-5.资讯的数据交互...

    如果你对中医感兴趣欢迎留言讨论,觉得我的内容对你有帮助的话,能够请我喝一杯沪上阿姨不禁万分感谢. 内容简介 本章介绍Django搭建中医网站项目平台前端建设之资讯模块的数据交互的内容.其中由于代码量较 ...

  9. android与python交互_Android与Python混合编程

    前言 早在2017年的时候,出于业余兴趣,我就开始研究关于Python移植到Android上的实现方案,我一直希望能实现Android与Python的混合编程,并为此写了一系列博客,我希望借助JNI技 ...

  10. php和python交互-浅析PHP与Python进行数据交互

    最近,决定在一个项目用tp5进行APP接口开发,用Python做数据分析,然后这就面临一个问题:PHP和Python如何进行数据交互? 思路 我解决此问题的方法是利用了PHP的passthru函数来调 ...

最新文章

  1. 上传大文件,出现: 413 request Entity too Large错误的解决办法
  2. lucene DocValues——本质是为通过docID查找某field的值
  3. Linux 信号随笔
  4. 【普及组模拟赛】作业
  5. jsoup 获取html中body内容_jsoup实现java抓取网页内容
  6. 8数据提供什么掩膜产品_工业轨式1-8路RS485数据(MODBUS RTU协议)厂家产品说明...
  7. ios 数组越界奔溃库_iOS中防止数组越界之后发生崩溃
  8. Map实现之HashMap(结构及原理)(转)
  9. 自适应来电模拟器微信小程序源码 可自定义来电名称归属地铃声等
  10. 按键精灵saystring无法使用的几种解决方案
  11. 液压系统原理动画_「修机」64个基本液压回路原理动画,全部看懂你就能成专家...
  12. 易语言组合框基本属性方法事件
  13. 算法导论终于看完了~
  14. 家庭理财项目 分析
  15. flink不等于符号问题
  16. C语言:利用指针编写程序,将一个一维数组a[10]中的最大元素与第一个元素互换、将最小元素与最后一个元素互换
  17. linux iio 设备驱动,FS4412开发板使用Linux IIO驱动框架实现ADC驱动
  18. 从《天行九歌》到海盗问题
  19. CentOS Docker使用ELK监听日志
  20. Java多线程——notify()与notifyAll()的区别

热门文章

  1. Eclipse RCP 中将窗口始终保持在最前
  2. Android开发之”再按一次退出程序“的实现
  3. [UE4]射击和直线追踪
  4. Mysql错误: Lock wait timeout exceeded 解决办法
  5. 对 VR 项目开发流程的调研
  6. Atian inputmethod 输入法解决方案 方言与多语言多文字支持 英语汉字汉语阿拉伯文的支持 (au...
  7. 解决远程登录MYSQL数据库
  8. js引用action层变量
  9. 下列哪个不是目前python里的内置模块-不吹不擂,你想要的Python面试都在这里了【315+道题】...
  10. python就业前景和工资待遇-看完Python这五大就业方向的薪资待遇,你选择哪个?...