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