RPC利器——PHPRPC(解决PHP调用python问题)

最近在毕设中要用php调用python的接口,在网上找到的一些解决方案都是通过调用OS的系统命令,及也就是用类似这样的方式system('python test.py');执行python的文件。这与调用exe的方式是一样的。这样做固然简单方便,但却有个很大的问题,就是不能与python写的函数进行交互,因为这样没办法传参数。我google到一种方法是说像通过类似命令行后的参数的形式传递参数,但经过考证并不合适。思来想去,虽然感觉貌似多此一举,但利用PHPRPC的方式实现会让开发变得非常舒服,使PHP与python差不多实现了无缝连接。下面简单说一下PHPRPC这个东西。

      虽然名叫PHPRPC,但却不是说只针对PHP这一种语言,通过官网(http://phprpc.org/zh_CN/)我们可以发现几乎支持当下各大主流编程语言。而且调用起来非常简便。以我的例子来说,我要用PHP来调用python的接口,可以这样做。开一个新的端口(比如8089)来运行python构造的server,demo代码如下:

from phprpc import PHPRPC_Server # 引入 PHPRPC Server

import datetime

def helloworld()

return'helloworld'

def hi(name):

return'hi %s' % name

server = PHPRPC_Server()

server.add(helloworld)

server.add('hi')

server.add(hi, 'hello')

server.add(datetime.datetime.now)

server.debug = True

server.start() 

然后在php中创建client,

$client = new PHPRPC_Client();

$client->setProxy(NULL);

$client->useService('http://localhost:8089');

$client->helloworld()

 

具体详细的内容请登录官网查看文档。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值