从laravel运行python

2024-09-30 12:14:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试从Laravel运行python脚本,其中SymfonyProcess组件如下:

我的控制器:

public function access(Request $request)
{
    $process = new Process(['test.py', 'helloworld']);
    $process->run();
    dd($process->getOutput());
}

Python脚本:

import sys
x = sys.argv[1]
print(x)

但我在dd中得到的只是""

你认为问题出在哪里


Tags: 脚本newaccessrequestsys组件function控制器
2条回答

Symfony进程不断抛出致命Python错误:\u Py\u HashRandomization\u Init错误,改为使用shell\u exec()

 <?php
    $var = "Hello World";
    $command = escapeshellcmd('path_to_python_script.py '.$var);
    $output = shell_exec($command);
    echo $output;
 ?>

您还可以发送文件而不是变量,并从python处理它。如果要获取运行时输入,请签出BrythonSkulpt

不是答案,只是提示,但太长,无法作为评论:

您可以转储其他有用的信息,而不是仅转储标准输出:

$process = new Process(['/usr/bin/python', '/my/full/path/test.py', 'helloworld']);
$process->run();

echo "Output:\n";
dump($process->getOutput());
echo "Error:\n";
dump($process->getErrorOutput());
echo "Exit code: " . $process->getExitCode() . "\n";
die;

相关问题 更多 >

    热门问题