本文主要介紹了PHP偵測介面Traversable用法,結合實例形式分析了Traversable介面偵測遍歷功能的相關操作技巧,需要的朋友可以參考下,希望能幫助到大家。
Traversable用於檢測一個類別是否可以使用 foreach 進行遍歷,這是一個無法在 PHP 腳本中實現的內部引擎接口,實際編程中我們使用Iterator接口或者IteratorAggregate接口來實現遍歷。
介面摘要:
Traversable { }
Traversable 重要的一個用處是判斷一個類別是否可以遍歷,以下是官方範例:
<?php if( !is_array( $items ) && !$items instanceof Traversable ) //Throw exception here ?>
要注意的是,數組和物件可以透過foreach遍歷,但它們沒有實現Traversable接口,所以不是Traversable的範例:
#<?php $array=[1,2,3]; $obj = (object) $array; var_dump($array instanceof \Traversable); var_dump($obj instanceof \Traversable); ?>
以上程式碼輸出:
boolean false boolean false
補充說明:
類別未實作Iterator介面或IteratorAggregate接口時,執行foreach遍歷將輸出所有其能夠存取的可見屬性
相關推薦:
以上是PHP偵測介面Traversable用法實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!