php 使用symfony进程组件从laravel调用python脚本

iqxoj9l9  于 2023-03-07  发布在  PHP
关注(0)|答案(1)|浏览(103)

目前我正在做一个需要我使用python和laravel的项目。我已经在网上搜索了很多,很明显调用python函数的解决方案是使用symphony。我很确定我已经尝试了所有的方法,但不知何故它不起作用
主计长
--首次尝试(使用Symfony):

use Symfony\Component\Process\Process;
use Symfony\Component\Process\Exception\ProcessFailedException;

class AdminController extends Controller
{
    function PythonRun()
    {
        $process = new Process(['/usr/bin/python3', 'test.py']);
        $process->run();
        
        if (!$process->isSuccessful()) {
            throw new ProcessFailedException($process);
        }
    
        $data = $process->getOutput(); 
        dd($data);      
    }
}

--第二次尝试(使用Exec):

class AdminController extends Controller
{
    function PythonRun()
    {       
       exec("/usr/bin/python3 /python/test.py");       
    }
}

它们都返回“系统找不到指定的路径”。我已经尝试将Python放在应用程序文件夹和公共文件夹中。两者都不起作用。

pdkcd3nj

pdkcd3nj1#

你想做什么没有问题,你可以用任何可能的方法运行Python程序,比如exec或者使用Symfony / process。
但在执行此操作之前,您必须确保执行exec或process命令的当前用户具有权限等。

相关问题