(PHP 5, PHP 7, PHP 8)
php_user_filter::filter — Chamada na aplicação do filtro
Este método é chamado toda vez que dados são lidos ou escritos no fluxo anexado (como em fread() ou fwrite()).
in
O parâmetro in é um recurso que aponta para uma brigada de bucket
que contém um ou mais objetos bucket contendo os dados a serem filtrados.
out
O parâmetro out é um recurso que aponta para uma segunda brigada de bucket
na qual os buckets modificados devem ser colocados.
consumed
O parâmetro consumed, que deve ser sempre
declarado por referência, deve ser incrementado com o comprimento dos dados
que o filtro lê e altera. Na maior parte dos casos isto significa que
consumed será incrementado em $bucket->datalen
para cada $bucket.
closing
Se o fluxo está no processo de fechamento
(e portanto este é a última passagem pela cadeia de filtros),
o parâmetro closing será definido para true.
O método filter() deve retornar um dos três valores quando concluído.
| Valor de Retorno | Significado |
|---|---|
PSFS_PASS_ON |
Filtro processado com sucesso com dados disponíveis na
brigada de bucketout.
|
PSFS_FEED_ME |
Filtro processado com sucesso, porém nenhum dado estava disponível para retorno Mais dados são requeridos do fluxo ou do filtro anterior. |
PSFS_ERR_FATAL (padrão) |
O filtro encontrou um erro irrecuperável e não pode continuar. |