(PHP 5, PHP 7, PHP 8)
php_user_filter::filter — 套用篩選器時呼叫
in
in
是一個指向 `bucket brigade` 的資源,其中包含一個或多個含有待過濾資料的 `bucket` 物件。
out
out
是一個指向第二個 `bucket brigade` 的資源,您修改後的 bucket 應放入其中。
consumed
consumed
必須 *始終* 以引用方式宣告,其值應增加您的過濾器讀取和修改的資料長度。在大多數情況下,這表示您將針對每個 `$bucket` 將 `consumed` 增加 `$bucket->datalen`。
closing
如果串流正在關閉過程中(因此這是最後一次通過過濾器鏈),則 `closing` 參數將被設為 **true
**。
filter() 方法在完成後必須回傳三個值之一。
回傳值 | 意義 |
---|---|
PSFS_PASS_ON |
過濾器已成功處理,資料可在 `out` `bucket brigade` 中取得。 |
PSFS_FEED_ME |
過濾器已成功處理,但沒有可回傳的資料。需要來自串流或先前過濾器的更多資料。 |
PSFS_ERR_FATAL (預設) |
過濾器發生無法復原的錯誤,且無法繼續。 |