企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# Traversable(遍历)接口 ## 简介 检测一个类是否可以使用[foreach](https://www.php.net/manual/zh/control-structures.foreach.php)进行遍历的接口。 无法被单独实现的基本抽象接口。相反它必须由**IteratorAggregate**或**Iterator**接口实现。 > **注意**: > > 实现此接口的内建类可以使用[foreach](https://www.php.net/manual/zh/control-structures.foreach.php)进行遍历而无需实现**IteratorAggregate**或**Iterator**接口。 > **注意**: > > 这是一个无法在 PHP 脚本中实现的内部引擎接口。**IteratorAggregate**或**Iterator**接口可以用来代替它。 ## 接口摘要 class**Traversable**{ } 这个接口没有任何方法,它的作用仅仅是作为所有可遍历类的基本接口。 ### 判断是否可以使用foreach遍历 ~~~ /** * @param int $vsh * @return iterator iterator作为返回值 * */ function gen(int $vsh):iterator { for ($vsh;$vsh<10;$vsh++) { yield $vsh; } } $a=gen(2); if ($a instanceof Traversable){ foreach ($a as $value){ echo $value."<br>"; } } ~~~