我正在尝试使用本地服务器(XAMPP),这是一个运行在我的VPS服务器(Linux CentOS7)上的脚本。在XAMPP上,我将Python脚本称为wit,如下所示:
$hotel = array("Name"=>$_POST["NAME"]
,..
);
$param = escapeshellcmd(base64_encode(json_encode($hotel)));
$result = shell_exec('python C:\xampp\htdocs\bounce.py $param');
$obj = json_decode($result);Python脚本类似于:
#! /Users/<user>/AppData/Local/Programs/Python/Python37/python.exe
import sys
import json
import base64
content = json.loads(base64.b64decode(sys.argv[1]))
print(json.dumps(content))返回的JSON字符串为NULL,这是Apache错误:
[php:warn] [pid 11176:tid 1884] [client ::1:55182] PHP Warning: Attempt to read property "Name" on null in C:\\xampp\\htdocs\\hotel_results.php on line 46, referer: http://localhost/更新Django,没有结果
发布于 2022-11-28 20:49:00
如果问题是由于单引号不读取"$param“变量而引起的,请替换
$result = shell_exec('python C:\xampp\htdocs\bounce.py $param');使用
$result = shell_exec("python C:\\xampp\\htdocs\\bounce.py $param");能帮上忙。值得一试。
https://stackoverflow.com/questions/74065117
复制相似问题