查詢

FilterIterator::valid()函式—用法及示例

「 檢查迭代器的當前元素是否有效 」


PHP函式:FilterIterator::valid()

適用版本:PHP 5 >= 5.1.0, PHP 7

函式用途:該函式用於檢查迭代器的當前元素是否有效。

語法:public FilterIterator::valid ( void ) : bool

引數:無引數

返回值:如果當前元素有效,則返回true,否則返回false。

示例:

current() > 0); } } $numbers = new ArrayIterator([1, -2, 3, -4, 5]); $filter = new MyFilter($numbers); foreach ($filter as $number) { echo $number . "\n"; } if ($filter->valid()) { echo "當前元素有效\n"; } else { echo "當前元素無效\n"; } ?>

輸出: 1 3 5 當前元素無效

解釋: 在上面的示例中,我們定義了一個自定義的過濾器類MyFilter,繼承自FilterIterator。在accept()方法中,我們透過判斷當前元素是否大於0來決定其有效性。然後我們建立了一個ArrayIterator物件$numbers,並將其傳遞給MyFilter類的例項$filter。在foreach迴圈中,$filter將會過濾掉所有小於等於0的元素,只輸出大於0的元素。最後,我們使用$filter->valid()來檢查當前元素是否有效,如果無效則輸出"當前元素無效"。由於最後一個元素是-4,所以當前元素無效。

補充糾錯
熱門PHP函式
分享連結