php_user_filter::filter - Вызывается, как только применяется фильтр
Вернуться к: php_user_filter
php_user_filter::filter
(PHP 5, PHP 7)
php_user_filter::filter — Вызывается, как только применяется фильтр
Описание
$in
, resource $out
, int &$consumed
, bool $closing
)Этот метод вызывается всякий раз, когда данные читаются из присоединенного потока или записываются в него (такими функциями, как fread() или fwrite()).
Список параметров
-
in
-
in
- ресурс, указывающий на bucket brigade, которая содержит один или несколько объектов bucket содержащих фильтруемые данные. -
out
-
out
- ресурс, указывающий на другой объект bucket brigade, в который будут помещаться модифицированные бакеты. -
consumed
-
consumed
, который должен всегда передаваться по ссылке, должен увеличиваться на размер данных, которые фильтр читает и изменяет. В большинстве случаев это значит, что Вы сами будете увеличивать значениеconsumed
на $bucket->datalen для каждого $bucket. -
closing
-
Если поток закрывается (следовательно, это последний фильтр в цепочке), аргумент
closing
примет значениеTRUE
.
Возвращаемые значения
Метод filter() должен возвращать одно из трех значений.
Возвращаемое значение | Описание |
---|---|
PSFS_PASS_ON |
Фильтр отработал успешно, данные доступны через аргумент
out bucket brigade.
|
PSFS_FEED_ME |
Фильтр отработал успешно, однако доступных для вывода данных нет. Требуются еще данные из потока или предыдущего фильтра. |
PSFS_ERR_FATAL (по умолчанию) |
Фильтр вызвал необрабатываемую ошибку и не может продолжить выполнение. |
Вернуться к: php_user_filter