PHP预定义接口一:Traversable

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

猜你喜欢

转载自blog.51cto.com/phpme/2129382