0

我是 php 新手并从 php.net 学习它。正如我们所知,当我们想要实现Traversable接口时,我们会使用用户定义的类来实现IteratorAggregateIterator接口,这些类在内部实现Traversable接口。但是在该页面(http://php.net/manual/en/class.traversable.php )的第二个注释中让我感到困惑的一件事是:

在实现扩展 Traversable 的接口时,请确保在 implements 子句中的名称之前列出 IteratorAggregate 或 Iterator。

谁能告诉它说的是什么?

4

1 回答 1

0

基本上,在创建类时,在 implements 语句之后,确保在声明中的其他接口之前列出 IteratorAggregate 或 Iterator。

<?php
interface Spam extends \Traversable
{
    // ...
}
final class Ham implements \IteratorAggregate, Spam
{
    public function getIterator()
    {
        return new \ArrayIterator(range(1, 10));
    }
}
于 2017-09-29T22:28:06.733 回答