(PHP 5, PHP 7)
php_user_filter::filter — Called when applying the filter
$in
, resource $out
, int &$consumed
, bool $closing
)This method is called whenever data is read from or written to the attached stream (such as with fread() or fwrite()).
in
in
is a resource pointing to a bucket brigade
which contains one or more bucket objects containing data to be filtered.
out
out
is a resource pointing to a second bucket brigade
into which your modified buckets should be placed.
consumed
consumed
, which must always
be declared by reference, should be incremented by the length of the data
which your filter reads in and alters. In most cases this means you will
increment consumed
by $bucket->datalen
for each $bucket.
closing
If the stream is in the process of closing
(and therefore this is the last pass through the filterchain),
the closing
parameter will be set to TRUE
.
The filter() method must return one of three values upon completion.
Return Value | Meaning |
---|---|
PSFS_PASS_ON |
Filter processed successfully with data available in the
out bucket brigade.
|
PSFS_FEED_ME |
Filter processed successfully, however no data was available to return. More data is required from the stream or prior filter. |
PSFS_ERR_FATAL (default) |
The filter experienced an unrecoverable error and cannot continue. |