php系统命令与输出和返回代码
问题描述:
我正在寻找的东西在PHP中,会给出一个系统命令的输出(原始)在一个变量与返回代码。php系统命令与输出和返回代码
-
exec
这样做,但输出是在阵列并因此返回的数据是不恰当(如\n
进来新索引)。 -
system
输出输出流中的数据而不是变量。 -
shell_exec
不给出返回值,但给出原始数据。
答
听起来像你要找的输出缓冲:
ob_start();
system($command, $returnCode);
$output = ob_get_clean();
这应该在每个输出线的末端保留所有空白字符(如exec
你写的这些破坏,所以implode
不会是一个选项)。或者,您可以打开一个进程并获取管道(标准输出,STDOUT)并从这些管道读取输出。但它更复杂(但给你更多选择)。见proc_open
。
你不能只是['implode()'](http://php.net/manual/en/function.implode.php)来自'exec()'的结果把它变成一个字符串吗? – JJJ 2012-02-02 09:14:29
嘿,工作......因为这个愚蠢的事情很长一段时间卡住....非常感谢 – 2012-02-02 10:04:24