[PHP-users 34073] 外部コマンド実行時に結果が返らない?

Atsushi rmitcs @ gmail.com
2008年 10月 2日 (木) 15:21:44 JST


PHP5.2.6、IIS6の環境で作業しています。

あるアプリケーションの実行環境が整っているか事前にチェックするためのPHPコードを書いて
います。
必要条件としてpearといくつかのpearライブラリが含まれているのでこれをPHPのプログラムか
らチェックするために外部コマンド実行するコードを書いたのですがうまくうごきません。

コマンドラインから"pear list"とタイプした場合、インストールされているpearライブラリが一覧表
示されますが、これを以下のようにPHPから実行すると結果が空となります。(厳密には空の配
列が返ってきます)

exec("pear list", $output);
print_r($output);

exec自体は正常に動作するようで、この部分をexec('dir", $output)としたときは配列内にディレ
クトリ情報がセットされて返されます。

execの他、passthru()やsystem()を使用してみましたが、結果は同じでした。
"pear list"の標準出力先はdirなどのコマンドとは違うのでしょうか?


PHP-users メーリングリストの案内