1

我已经使用系统运行了我的命令,我希望它将终端结果复制到一个名为 output.txt 的文件中。当我在浏览器上运行我的 php 脚本时,它会显示结果,但不会在 output.txt 中显示该文件为空。

echo '<pre>';

$last_line = system('ruby /home/simon/ruby-grok/examples/result.rb', $retval);

echo '</pre>';

$out = fopen('output.txt', 'w'); //output handler
fputs($out,$last_line); //writing output operation
fclose($out); 
4

2 回答 2

0

使用反引号要好得多。

$variable = `ls -l`;

接着:

$out = fopen('output.txt', 'w'); //output handler

fputs($out,$variable); //writing output operation

fclose($out); 

或者:

file_put_content('output.txt',$variable);
于 2013-01-15T14:28:20.647 回答
0

代码看起来不错。脚本是否有权写入该特定文件?你可以尝试而不是

$out = fopen('output.txt', 'w'); //output handler
fputs($out,$last_line); //writing output operation
fclose($out); 

把这个:

file_put_contents('output.txt',$last_line);

编辑:

顺便说一句,我忘了问。您的浏览器显示什么输出?$out 变量中是否有任何数据?

于 2013-01-15T13:54:37.843 回答