L3 Info : PHP et Applications Web
 
◃  Ch. 6 SPL : Standard PHP Library  ▹
 

Interface IteratorAggregate

  • IteratorAggregate : Interface pour créer un itérateur externe
    interface IteratorAggregate extends Traversable {
      /* Méthodes */
      abstract public Traversable getIterator ( void )
    }
  • IteratorAggregate permet d'externaliser le mécanisme d'itération (les méthodes d'Iterator)
  • Source classe LivreMetierAggregate :
    class LivreMetierAggregate implements IteratorAggregate {
    
      public function getIterator() {
        return new LivreIterator();
      }
    }
  • Exécution :
    $lma = new LivreMetierAggregate();
    $literator = $lma->getIterator();
    echo "<ul>";
    foreach ($literator as $livre)
        echo "<li>".$literator->current()."</li>";
    echo "</ul>";