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

# stream_filter_prepend

(PHP 4 >= 4.3.0, PHP 5)

stream_filter_prepend -- フィルタをストリームに付加する

## 説明

resource stream_filter_prepend ( resource stream, string filtername [, int read_write [, mixed params]] )

`filtername` で指定されたフィルタを、 `stream` に付加されているフィルタのリストに加えます。 このフィルタは、指定された `params` と共に、 リストの先頭に追加され、ストリームに対する操作の中で最初に呼び出されます。 フィルタをリストの末尾に加えたいときは、stream_filter_append() を使ってください。

デフォルトでは、 stream_filter_prepend() は ストリームが読み込み用に開かれている場合は (つまり、オープンモードが `r` あるいは `+` を伴う場合は)、 フィルタを `リードフィルタチェイン` に追加し、 ストリームが書き出し用に開かれている場合は(つまり、オープンモードが `w` か `a`か、あるいは`+` を伴う場合は)、 `ライトフィルターチェィン`にも追加します。 `STREAM_FILTER_READ`・ `STREAM_FILTER_WRITE`・ `STREAM_FILTER_ALL` を `read_write`パラメータに渡すことで、この挙動を変えることができます。 このパラメータを使った例については、 stream_filter_append() を参照ください。

PHP 5.1.0 以降、この関数はリソースを返します。このリソースは stream_filter_remove() のコール時にこの フィルタのインスタンスを指定するために使用可能です。 PHP 5.1.0 より前のバージョンでは、この関数は 成功した場合に `TRUE`、失敗した場合に `FALSE` を返します。

> カスタム(ユーザ)フィルタを使うには: カスタムフィルタを `filtername` に指定するためには、 まず stream_filter_register() 関数でそれを登録しておく 必要があります。

> 注意: ストリームデータは（ローカルおよびリモートの）リソースからチャンク単位で 読み込まれ、内部バッファに保持されます。新しいフィルタがストリームに 追加されても、内部バッファにあるデータのうち既に他のフィルタの処理が 終わっているものは新しいフィルタでは処理されません。 これは stream_filter_apppend() の挙動とは違います。

stream_filter_register() および stream_filter_append() も参照ください。

前のページ | ホーム | 次のページ
stream_filter_append | 上に戻る | stream_filter_register