我尝试用PHP执行python脚本但是没有结果:我试过
$tmp = passthru("C:\\Python27\\python.exe C:\\Python27\\script.py C:\\Python27\\file.pdf",$output);
print($output)
结果:“1”
虽然
$tmp = exec("C:\\Python27\\python.exe C:\\Python27\\script.py C:\\Python27\\file.pdf",$output);
返回Array()
我除了返回一个字符串,有什么建议吗? 我在我的php.ini文件中验证了
safe_mode = Off
谢谢!
答案 0 :(得分:1)
exec()
的文档说$output
参数是一个将用每一行填充的数组。如果要将其转换为单个字符串,请使用:
$output_string = implode("\n", $output);
答案 1 :(得分:0)
这应该适合你:
ob_start();
passthru("C:\\Python27\\python.exe C:\\Python27\\script.py C:\\Python27\\file.pdf");
$filedata = ob_get_clean();
echo $filedata;
答案 2 :(得分:0)
默认情况下,python缓冲输出。将环境变量PYTHONUNBUFFERED设置为非空字符串,或使用-u运行python。