php_user_filter::filter

(PHP 5, PHP 7)

php_user_filter::filterCalled when applying the filter

说明

public php_user_filter::filter ( resource $in , resource $out , int &$consumed , bool $closing ) : int

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.