2017-09-29 14 views
0

나는 php.net을 처음 사용하고 php.net에서 배웠다. 우리는 우리가 IteratorAggregate를 구현 에 이동 인터페이스 또는 내부적으로 에 이동 인터페이스를 구현하는 사용자 정의 클래스와 반복자 인터페이스를 구현하고자 할 때 우리가 알다시피. 그러나 말한다 해당 페이지 (http://php.net/manual/en/class.traversable.php)에 2 참고 나를 혼란 한 가지 :무엇을 의미합니까? 인터페이스를 구현할 때 IteratorAggregate 또는 Iterator를 PHP에서 이름으로 사용합니까?

에 이동 확장하는 인터페이스를 구현의 구현 절에있는 그것의 이름 앞에 IteratorAggregate 또는 반복자를 나열해야합니다.

아무도 말할 수 있습니까?

답변

0

기본적으로 클래스를 만들 때 implements 문 다음에 선언의 다른 인터페이스 앞에 IteratorAggregate 또는 Iterator를 나열해야합니다.

<?php 
interface Spam extends \Traversable 
{ 
    // ... 
} 
final class Ham implements \IteratorAggregate, Spam 
{ 
    public function getIterator() 
    { 
     return new \ArrayIterator(range(1, 10)); 
    } 
} 
+0

** 스팸 **은 무엇입니까? –

+0

** spam **은 => (** IteratorAggregate ** 또는 ** Iterator **) 인터페이스를 의미합니까? –

+0

미안하지만 당신을 얻지 못했습니다. 무슨 뜻 이죠 ** ** 구현 문 뒤에 ** 클래스를 만들면 그게 무슨 뜻입니까? –