Skip to main content
 首页 » 编程设计

php之从 Python 脚本解析 PHP var_dump

2024年10月24日28qq号

如何在 PHP 中解析 var_dump 的结果?我的 PHP 代码调用 Python 脚本如下:

exec("python /home/content/51/5159651/html/perl/test_python.py $a0 $a1", $output); 
var_dump($output); 

其中 $a0 和 $a1 是整数。 test_python.py 正确地将 $a0 和 $a1 相乘,但是 (for $a0=5 and $a1=7) 的 var_dump($output) 是

array(1) { [0]=> string(2) "35" } 

我想要的只是答案,35。是的,我可以使用正则表达式解析结果,但必须有更简单的方法 - 例如var_dump 以外的东西。 test_python.py 的代码如下,我很乐意修改它以获得更简单的方法来提取结果。

#!/usr/bin/python 
import sys  
parameter1=int(sys.argv[1]); 
parameter2=int(sys.argv[2]); 
 
def main(parameter1, parameter2): 
    output = parameter1*parameter2 
    return output 
 
output=main(parameter1, parameter2); 
print(output); 

请您参考如下方法:

您只需要某人的电话号码,并且您正在进行整个背景调查:)

var_dump($output); 

告诉您有关响应 $output 的所有信息,但您只需要值。所以

echo $output[0];   //$output is an array and you need its first element. 

所以你的 var_dump 需要去。

exec("python /home/content/51/5159651/html/perl/test_python.py $a0 $a1",  $output); 
echo $output[0];   // will say 35 for 5 and 7 

一点额外

这是var_dump输出的解释

array(1) { [0]=> string(2) "35" }

这意味着 $output 是一个包含 1 个元素的数组,索引为 0。元素 type = string 及其 length = 2 和它的值 = 35