大量のテキストを出力するだけの perl スクリプトに exec 呼び出しを行うと、テキストのキャプチャに問題が発生します。次のコードを実行すると、「配列」という 1 単語の結果が得られます。少しだけ変更できるように、結果をキャプチャできる必要があります。コードは次のとおりです。
<?php
$lastline = exec("perl parseOutput.pl",$retVal);
echo $retVal;
?>
これを回避するにはどうすればよいですか?
出力されたテキスト行の配列があります。
次のようにします。
echo implode( "\n", $retVal);
または
echo implode( "<br />\n", $retVal);
そして、perl スクリプトによって生成されたすべての出力が表示されます。
shell_exec ()を使用するだけです
$fullResult = shell_exec("perl parseOutput.pl");
echo $fullResult;