PHP イテレータ:
あらゆる種類の可算データをループまたは反復するための単一の標準インターフェイスを提供する特定のオブジェクトの構築に役立ちます。 (特に一般的には使用されません、PHP では)
使用シナリオ:
1. 内部表現を公開せずに集合オブジェクトの内容にアクセスします。
2. 集約オブジェクトの複数の走査をサポートします。
3. さまざまな集約構造 (つまり、多態性反復) を横断するための統一インターフェイスを提供します。
PHP コードの実装:
[php]
//Iterator: あらゆる種類の可算データをループまたは反復するための単一の標準インターフェイスを提供する特定のオブジェクトの構築に役立ちます
class MyIterator は Iterator {
を実装します
プライベート $var = array();
パブリック関数 __construct($array) {
$this->var = $array;
}
パブリック関数 rewind() {
リセット($this->var);
}
パブリック関数 current() {
$var = 現在($this->var);
$var を返します。
}
パブリック関数 valid() {
$var = $this->current() !== false;
$var を返します。
}
パブリック関数 next() {
$var = next($this->var);
$var を返します。
}
パブリック関数キー() {
$var = key($this->var);
$var を返します。
}
}
$values = array('a', 'b', 'c');
$it = 新しい MyIterator($values);
foreach ($it as $a => $b) {
"$a: $b
" を印刷します。
}
?>
作者: initphp
http://www.bkjia.com/PHPjc/478134.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/478134.html