[PHP-users 4027] Re: 外部プログラムの実行について

Sekiyama php-users@php.gr.jp
Fri, 30 Nov 2001 23:38:36 +0900


> > $msg = system("ls");
> 
> の部分を、
> 
> $msg = system("php -v");
> 
> 等に変えて、まずPHPを起動できか、確認して下さい。

この意味が良く判らないのですが、やってみたところ
タイムアウトのようで、「ページを表示できません」になってしまいました。


> 
> > $msg = system(/home/****/public_html/test01.php4  > /dev/null &")
> > と、やっても駄目で、
> 
> 出力を /dev/null に捨てているので、戻り値に何も返って来ないのでは?

PHPのマニュアルに

「この関数を使用してプログラム実行を開始し、バックグラウンドで実行 した
ままにしたい場合には、プログラムの出力をファイルまたは他の出 力ストリー
ムにリダイレクトする必要があることにも注意して下さい。 さもないと、PHPは
そのプログラムの実行が終了するまでハングします。 」

と書いてあったので、こうしました。

$msg = system("/home/****/public_html/test01.php4 &")
と、やると、これもまた「ページを表示できません」になってしまいます。

で、バックグラウンドにしないで、
$msg = system("/home/****/public_html/test01.php4")
print $msg ? $msg : "";

だと、「失敗したみたい。」になります。


-----------------------
セキヤマ
sekiyama@pine.zero.ad.jp
-----------------------