您可以从 codeigniter 控制器中的函数执行 Python 脚本吗

问题描述

我有一个要从我的 codeigniter 控制器执行的 python 脚本。 我发现了一个类似的问题,但不太能看到输出 (Executing a Python file from Codeigniter)

有没有办法可以从我的 CI 应用程序中运行 python 脚本并将输出转换为变量或类似的东西?

解决方法

例如,您可以使用 passthru 函数从 php 执行 python 脚本。

<?php
ob_start();
passthru('/full/path/to/python /full/path/to/test.py arg1 arg2');
$output = ob_get_clean(); 

echo $output;
?>

或者使用“系统”功能。

<?php
system('full/path/to/python /full/path/to/test.py',$return_value);
echo $return_value;
?>

但是如果你想“看到”一些东西,你的 python 脚本应该返回一些东西。

import sys
 #calculate stuff
sys.stdout.write('Bugs: 5 |Other: 10\n')
sys.stdout.flush()
sys.exit(0)