从php调用C程序并读取程序输出

时间:2011-04-05 17:27:10

标签: php c linux

有人可以解释一下如何从php脚本运行C程序并将C程序的控制台输出存储到php变量中吗?

我的程序使用C printf()函数在控制台上打印一个整数值。我想读取这个值并将其存储在php变量中 我正在使用linux。我尝试了exec,但是一旦回显到页面

就不会显示变量值

这是我正在使用的代码段。

exec("Release/matchface image1.jpg image2.jpg", $output);
while( list(,$row) = each($output) ) {
  echo $row. "<br />";
} 

1 个答案:

答案 0 :(得分:13)

您需要使用shell_exec()函数(引用)

  

通过shell执行命令并返回   完整输出为字符串

这意味着看起来像这样:

$output = shell_exec('/path/to/your/program');


或者,您可以使用backtick operator - 这将完全相同的事情(引用)

  

PHP将尝试执行   反引号的内容为shell   命令;输出将被返回

并且,在代码中:

$output = `/path/to/your/program`;