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

コードは問題ないようです。スクリプトには、その特定のファイルに書き込む権限がありますか? そして、代わりに試すことができますか

$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 に答える
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 に答える