(PHP 5, PHP 7)
stream_bucket_prepend — Добавление бакета (bucket) в начало очереди бакетов потока (brigade)
$brigade
, object $bucket
)Добавление бакета (bucket) в начало очереди бакетов потока (brigade) Обычно она вызывается из php_user_filter::filter().
brigade
brigade
- ресурс, указывающий на
очередь бакетов, которая содержит один или
несколько объектов 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) {
// Этот бакет будет продублирован и появится перед всеми остальными.
stream_bucket_prepend($in, $bucket);
}
}
return PSFS_FEED_ME;
}
}
stream_filter_register('test', 'foo');
print file_get_contents('php://filter/read=test/resource=foo');
?>