(PHP 5, PHP 7, PHP 8)
stream_bucket_prepend — Добавляет бакет в начало бригады
Функция может использоваться для добавления бакета в начало бригады бакетов. Обычно она вызывается из метода php_user_filter::filter().
brigade
brigade
– ресурс, указывающий на
бригаду бакетов
, которая содержит один или
несколько объектов bucket
.
bucket
Бакет.
Функция не возвращает значения после выполнения.
Версия | Описание |
---|---|
8.4.0 | Параметр bucket теперь ожидает экземпляр класса StreamBucket; ранее ожидался объект stdClass. |
Пример #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');
?>