首頁 >後端開發 >php教程 >PHP偵測介面Traversable的用法詳解

PHP偵測介面Traversable的用法詳解

jacklove
jacklove原創
2018-07-04 17:46:421626瀏覽

這篇文章主要介紹了PHP檢測介面Traversable用法,結合實例形式分析了Traversable介面偵測遍歷功能的相關操作技巧,需要的朋友可以參考下

本文實例講述了PHP偵測介面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自訂序列化介面Serializable用法分析解說

PHP 的Opcache加速的使用方法詳解

利用Laravel產生Gravatar頭像位址的方法

#

以上是PHP偵測介面Traversable的用法詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn