(PHP 5, PHP 7, PHP 8)
stream_bucket_prepend — bucket を brigade の先頭に追加する
$brigade
, object $bucket
): voidこの関数を呼ぶと、bucket brigade の先頭に bucket を追加できます。一般に、 php_user_filter::filter() から呼ばれます。
brigade
brigade
は bucket brigade
を指すリソースで、ここにはひとつあるいは複数の
bucket
オブジェクトが含まれます。
bucket
bucket オブジェクト。
値を返しません。
例1 stream_bucket_prepend() の例
<?php
class foo extends php_user_filter {
protected $calls = 0;
public function filter($in, $out, &$consumed, $closing) {
while ($bucket = stream_bucket_make_writeable($in)) {
$consumed += $bucket->datalen;
if ($this->calls++ == 2) {
// This bucket will appear again before any other bucket.
stream_bucket_prepend($in, $bucket);
}
}
return PSFS_FEED_ME;
}
}
stream_filter_register('test', 'foo');
print file_get_contents('php://filter/read=test/resource=foo');
?>