내부 구현을 모르고 객체의 내부 표현을 노출하지 않고 집계 객체의 내부 요소를 탐색하는 것이 PHP 반복자 패턴의 정의입니다.
적용 가능한 시나리오:
내부 표현을 노출하지 않고 집계 개체의 콘텐츠에 액세스
집계 개체의 다중 순회 지원
다양한 집계 구조 순회를 위한 통합 인터페이스 제공
반복자 패턴 예:
<?php class ConcreteIterator implements Iterator{ private $position = 0; private $arr; function __construct(array $arr){ $this->arr = $arr; } function rewind(){ $this->position = 0; } function current(){ return $this->arr[$this->position]; } function key(){ return $this->position; } function next(){ ++$this->position; } function valid(){ return isset($this->arr[$this->position]); } } $arr = array('xiao hong','xiao ming','xiaohua'); $concreteIterator = new ConcreteIterator($arr); foreach ($concreteIterator as $key => $value) { echo $key."=>".$value."\n"; }
위 내용은 이 글의 전체 내용입니다. 모든 사람이 PHP 디자인 패턴을 배우는 데 도움이 되기를 바랍니다.
위 내용은 PHP 팩토리 패턴의 내용을 포함해 PHP 디자인 패턴의 Iterator 패턴과 PHP 팩토리 패턴을 소개한 내용입니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되었으면 좋겠습니다.