Standard PHP Library(SPL) Iteratorインターフェイス編2

ヒューマンリソシア

2015年7月26日 19:39

※この記事は読者によって投稿されたユーザー投稿のため、編集部の見解や意向と異なる場合があります。 また、編集部はこの内容について正確性を保証できません。
ヒューマンリソシア株式会社はコラム「Standard PHP Library(SPL) Iteratorインターフェイス編2」を公開しました。 まずは、前回出てきたreset、current、key、nextの各関数、及び「whileでの終了判定の問題」を思い出してください。 そうして、それを思い出していただいた上で、もう一度「Iteratorインターフェイス」を見てみましょう。 Iterator extends Traversable { /* メソッド */ abstract public mixed current ( void ) abstract public scalar key ( void ) abstract public void next ( void ) abstract public void rewind ( void ) abstract public boolean valid ( void ) } 概ね察しが付くと思いますが、current、key、nextの各メソッドはそのまま、各関数と同じ意味合いになります。 rewindはresetと等価です。 また、whileの終了条件で色々と面倒がありましたが、それはvalidメソッドが担当してくれる事を期待しています。 上述を、コードっぽいもの(実際には動かないので)でそれっぽく書いてみると、以下のようになります。 "three")); // 配列の内部ポインタを先頭の要素にリセット $obj->rewind(); // 反復処理 while (false !== $obj->valid()) { $value = $obj->value(); $key = $obj->key(); echo "Key: $key; Value: $value\n"; $obj->next(); } この続きは以下をご覧くださいhttp://resocia.jp/column/307/?>
この記事のキーワード

人気記事トップ10

人気記事ランキングをもっと見る