Traversable用于检测一个类是否可以使用 foreach 进行遍历,这是一个无法在 PHP 脚本中实现的内部引擎接口,实际编程中我们使用Iterator接口或者IteratorAggregate接口来实现遍历。

<?php
if( !is_array( $items ) && !$items instanceof Traversable ){

# 不能foreach循环

} else {

# 可以foreach循环

}

?>