Traversable用于检测一个类是否可使用 foreach 进行遍历。
- 这是一个没法在 PHP 脚本中实现的内部引擎接口,实际编程中咱们使用Iterator接口或者IteratorAggregate接口来实现遍历。
- 这个接口没有任何方法,它的做用仅仅是做为全部可遍历类的基本接口。
Traversable { }
代码演示:编程
$arr = [1, 2, 3, 4]; $obj = (object)$arr; if ($arr instanceof \Traversable) { echo 'arr is Traversable' . PHP_EOL; } else { echo 'arr is not Traversable' . PHP_EOL; } if ($obj instanceof \Traversable) { echo 'obj is Traversable' . PHP_EOL; } else { echo 'obj is not Traversable' . PHP_EOL; } // arr和obj不是implement Traversable