CLI SAPI には入出力ストリーム用の定数がいくつか定義されており、 これらを使うとコマンドライン用のプログラミングが多少簡単になります。
STDIN
stdin へのオープン済みのストリーム。 これにより、以下のようにオープンする必要がなくなります。
stdin
<?php$stdin = fopen('php://stdin', 'r');?>
<?php$line = trim(fgets(STDIN)); // STDIN から 1 行読み込むfscanf(STDIN, "%d\n", $number); // STDIN から数値を読み込む?>
STDOUT
stdout へのオープン済みのストリーム。 これにより、以下のようにオープンする必要がなくなります。
stdout
<?php$stdout = fopen('php://stdout', 'w');?>
STDERR
stderr へのオープン済みのストリーム。 これにより、以下のようにオープンする必要がなくなります。
stderr
<?php$stderr = fopen('php://stderr', 'w');?>
上記のように、stderr のようなストリームを自分で オープンする必要はなく、以下のようにストリームリソースの代わりに 定数を使用するだけでかまいません。
php -r 'fwrite(STDERR, "stderr\n");'
注意: これらの定数は、PHP スクリプトを stdin から読み込んだ場合は使用できません。
注意:
これらの定数は、PHP スクリプトを stdin から読み込んだ場合は使用できません。