<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                ## **[Traversable(遍歷)接口](https://www.php.net/manual/zh/class.traversable.php#class.traversable)** >[danger]這是一個無法在 PHP 腳本中實現的內部引擎接口。無法被單獨實現的基本抽象接口。相反它必須由**IteratorAggregate**或**Iterator**接口實現 ``` Traversable{ } ``` 目前為止只有instanceof能被我們使用 檢測一個類(或者數組)是否可以使用[foreach](https://www.php.net/manual/zh/control-structures.foreach.php)進行遍歷的接口【php7.1+可以使用is_iterable來檢查】 ``` if ( !($myobj instanceof \Traversable) ) { ? ? print "myobj is NOT Traversable"; } ``` ``` //注意:雖然對象和數組可以由foreach遍歷,但它們不實現“可遍歷”,因此不能使用instanceof Traversable來檢查foreach $myarray = array('one', 'two', 'three'); $myobj = (object)$myarray; if ($myarray instanceof Traversable) { echo '[myarray]yes'; } //php7.1+可以使用is_iterable來檢查數組或者實現Traversable的類的迭代性 if (is_iterable($myarray)) { echo '$myarray is_iterable'; } if ($myobj instanceof Traversable) { echo '[myobj]yes'; } if (is_iterable($myobj)) { echo '$myobj is_iterable'; } //那么instanceof Traversable在什么情況下生效(實現Iterator或IteratorAggregate接口的類) class A { } class B implements Iterator{//Iterator繼承Traversable public function current (){} //返回當前產生的值 public function key (){} //返回當前產生的鍵 public function next (){} // 生成器繼續執行 public function rewind (){} //重置迭代器 public function valid (){} //檢查迭代器是否被關閉 } $a=new A(); $b=new B(); if ($a instanceof Traversable) { echo '[A]yes'; } if ($b instanceof Traversable) { echo '[B]yes'; } //不能直接實現Traversable會報致命錯誤 class S implements Traversable {} ``` 結果: ``` $myarray is_iterable [B]yes Fatal error: Class S must implement interface Traversable as part of either Iterator or IteratorAggregate in Unknownon line 0 ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看