在PHP中运行Python脚本:捕获所有输出


问题内容

我有一个Python包含多个print语句的程序。当我从执行程序时PHP,显示的输出只是最后一条print语句打印的值。有没有办法捕获脚本中所有print语句打印的值Python

PHP 码:

<?php
ini_set('display_errors', 1);
$output = exec("python script.py");
echo $output;
?>

问题答案:

尝试shell_exec-通过shell执行命令并以字符串形式返回完整的输出

escapeshellcmd()会转义字符串中的任何字符,这些字符可能会用于诱骗Shell命令执行任意命令。

将文件命名为-python_script.py并遵循给定的脚本-

$command = escapeshellcmd('python_script.py');
$output = shell_exec($command);
echo $output;

Ref#从PHP运行Python脚本