PHP:通过命令行从php项目运行Blender中的Python脚本
我需要在命令行(cmd)中运行一个Blender的Python脚本,并从一个PHP项目中打印结果,但我没有得到全部的结果。
这是我的代码:
$script = "C:\Users\madalina\Desktop\workspace\script.py";
$blander_path = "C:\Program Files\Blender Foundation\Blender";
$output = shell_exec("cd $blander_path && blender -b -P script.py -- $json");
print_r($output);
这是我收到的内容:
找到捆绑的Python: C:\Program Files\Blender Foundation\Blender\2.69\python Blender退出
而当我直接从命令行运行同样的脚本时,我得到的是:

我该如何才能在我的PHP项目中运行同样的脚本时得到相同的响应?(我使用的是Blender 2.69)
1 个回答
0
我解决了这个问题。我把system_exec命令换成了exec,并把json对象用引号括起来。
这是我现在的代码:
$json = str_replace("\"", "\\\"", json_encode($jsonArray));
$script = "C:\Users\madalina\Desktop\workspace\script.py";
$blander_path = "C:\Program Files\Blender Foundation\Blender";
$output = exec("cd $blander_path && blender -b -P $script -- \"$json\"", $data);
print_r($data);