如何从PHP var_dump中获取Python输出

时间:2014-06-03 06:24:05

标签: php python html

我有以下Python代码:

#!/usr/bin/env python
import sys
myargs = sys.argv[1]

mylist = ["foo bar qux", "uix nan col"]
for chunk in mylist:
    mems = chunk.split()
    mems.append(myargs)
    print mems

执行以下python test.py param时会显示以下结果:

['foo', 'bar', 'qux', 'param1']
['uix', 'nan', 'col', 'param1']

我想要做的是使用PHP来调用上面的python脚本并解析输出。 我在我的PHP代码(index.php)中有这个:

<HTML>
<HEAD>
<TITLE>MYCODE</TITLE>
</HEAD>
<BODY>
<BR>


 <?php echo '<p>This is the output of my code:</p>'; ?>
<?php
 $vars = eval(`python /misc/path_to_mycode/test.py param1`);
 var_dump($vars)
?>

</BODY>
</HTML>

但它在网上打印出来: enter image description here

1 个答案:

答案 0 :(得分:1)

在php中使用exec()。尝试这样

<?php echo '<p>This is the output of my code:</p>'; 
 exec('python /misc/path_to_mycode/test.py param1',$out);
 var_dump($out)
?>

exec函数只返回命令结果的最后一行。