PHP マニュアル
前のページ |  | 次のページ

# popen

(PHP 3, PHP 4 , PHP 5)

popen -- プロセスへのファイルポインタをオープンする

## 説明

int popen ( string command, string mode)

`command`で与えられたコマンドを fork()して実行し、そのプロセスへのパイプをオープンします。

fopen()により返されたファイルポインタ と同様のものを返しますが、それは(読み書きのいずれか一方で のみ使われる)片方向ストリームであり、pclose() によりクローズされなければならないところが異なります。この ポインタは、fgets(), fgetss() およびfputs()のいずれかで使うことができます。

エラーが起こった場合`FALSE`を返します。

> 注意: 双方向(two-way)のサポートを求めているのなら、 proc_open()を使用してください。

`$fp = popen ("/bin/ls", "r");`

実行すべきコマンドが見つからない場合には、正常なリソースが返されます。 おかしなことと思われるかもしれませんが、これには意味があります。 これによってシェルから返されたエラーメッセージにアクセスすることができるのです。

`<?php error_reporting(E_ALL); /* Add redirection so we can get stderr. */ $handle = popen('/path/to/spooge 2>&1', 'r'); echo "'$handle'; " . gettype($handle) . "\n"; $read = fread($handle, 2096); echo $read; pclose($handle); ?>`

pclose(), fopen(), proc_open()も参照してください。

前のページ | ホーム | 次のページ
pclose | 上に戻る | readfile