L’Itérateur est un patron de conception comportemental qui permet de parcourir une structure de données complexe de façon séquentielle sans exposer ses détails internes.
Grâce à l’itérateur, les clients peuvent parcourir les éléments de différentes collections de la même manière en utilisant une seule interface.
Exemples d’utilisation : L’itérateur est très répandu en PHP. Il est utilisé dans de nombreux frameworks et bibliothèques pour fournir une méthode de parcours standard de leurs collections.
Le PHP possède une interface native pour l’Itérateur qui peut être utilisée pour fabriquer des itérateurs personnalisés compatibles avec le reste du code PHP.
Identification : L’itérateur peut facilement être reconnu grâce aux méthodes de parcours (comme next, previous et d’autres). Le code client qui utilise les itérateurs n’a pas forcément d’accès direct aux collections parcourues.
Exemple conceptuel
Dans cet exemple, nous allons voir la structure de l’Itérateur et répondre aux questions suivantes :
Que contiennent les classes ?
Quels rôles jouent-elles ?
Comment les éléments du patron sont-ils reliés ?
Après avoir étudié la structure du patron, vous pourrez plus facilement comprendre l’exemple suivant qui est basé sur un cas d’utilisation réel en PHP.
index.php: Exemple conceptuel
Output.txt: Résultat de l’exécution
Analogie du monde réel
Puisque le PHP possède déjà une interface native pour l’Itérateur qui fournit des boucles foreach pratiques pour l’intégration, vous pouvez très facilement créer vos propres itérateurs pour parcourir toutes les structures de données imaginables.
Cet exemple vous montre un moyen d’accéder facilement à des fichiers CSV.