gpt4 book ai didi

php - 将 JSON 数据从 PHP 传递到 Python 脚本

转载 作者:太空狗 更新时间:2023-10-29 21:02:56 25 4
gpt4 key购买 nike

我希望能够将 PHP 数组传递给 Python 脚本,该脚本将利用数据执行某些任务。我想尝试使用 shell_exec() 从 PHP 执行我的 Python 脚本并将 JSON 数据传递给它(我是全新的)。

$foods = array("pizza", "french fries");
$result = shell_exec('python ./input.py ' . escapeshellarg(json_encode($foods)));
echo $result;

“escapeshellarg(json_encode($foods)))”函数似乎将我的数组传递给 Python 脚本(如果我“回显”该函数,我会得到这个值:

'["pizza","french fries"]'

然后在 Python 脚本中:

import sys, json
data = json.loads(sys.argv[1])
foods = json.dumps(data)
print(foods)

这会向浏览器打印以下内容:

["pizza", "french fries"]

这是一个普通的旧字符串,而不是列表。我的问题是,我怎样才能最好地将这些数据像列表一样对待,或者我可以用“,”作为分隔符进行迭代的某种数据结构?我真的不想将文本输出到浏览器,我只想能够将列表分解成多个部分并将它们插入到文件系统上的文本文件中。

最佳答案

有同样的问题

让我告诉你我做了什么

PHP:

base64_encode(json_encode($bodyData))

然后

json_decode(shell_exec('python ' . base64_encode(json_encode($bodyData)) );

在 Python 中我有

import base64

content = json.loads(base64.b64decode(sys.argv[1]))

正如 Em L 已经提到的 :)

对我有用干杯!

关于php - 将 JSON 数据从 PHP 传递到 Python 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38626423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com