-2

我有一个不支持 python 的后端云服务数据库。

所以我正在使用 php 文件建立 python 代码和数据库之间的连接。

插入工作正常,因为 php 文件没有对 python 的响应。

然而,在检索我需要 php 文件来回显输出和 python 脚本来读取这个回显值。我怎样才能做到这一点?

谢谢。

4

3 回答 3

0

使用该subprocess模块从 python 执行 PHP 代码。

假设您的 PHP 脚本写入标准输出subprocess.check_output()将是最简单的,或者subprocess.Popen()如果您需要更好地控制子进程,您可以使用。

如果您使用的是 Python >= 3.5,那么您可以使用subprocess.run().

于 2016-06-11T13:13:20.313 回答
0

要使用 python 从 stdout 读取,您可以使用 subprocess 模块

import subprocess
p = subprocess.Popen("ls",stdout=subprocess.PIPE) # in your case, "ls" change with php command
print p.communicate()  # here you will get ls output

但我认为这不是解决您问题的好方法。更好的解决方案是使用 php 作为 REST 服务。然后使用 python 将其用作 REST。

import json
import urllib2
json.load(urllib2.urlopen("htt://yourphpapplicationaddress.com"))
于 2016-06-11T13:13:50.953 回答
0

尝试使用管道,例如:

php test.php | grep 'xxx' python text.python

就是这样,python可以从sys.argv获取php的echo数据

于 2018-11-03T13:25:53.507 回答