Skip to content
Valider 69b18afa rédigé par marcimat's avatar marcimat
Parcourir les fichiers

Essai de décorateur sur les Itérateurs.

* Utiliser un décorateur pour appeler les itérateurs. Cela permet d'utiliser quelques itérateurs existants dans PHP tel que GlobIterator ou DirectoryIterator en utilisant le connecteur «iter» dans les boucles en question. Le critère : {args argument1, argument2, ...} permet de transmettre les paramètres de création de l'itérateur en question : new GlobIterator($argument1, $argument2) ...

* Lorsque l'on définit un connecteur "iter", on cherche directement un iterateur du nom donné. Ces exemples fonctionnent :
{{{

<h1>GlobIterator</h1>
<B_GlobIterator>
#ANCRE_PAGINATION
	<ul>
		<BOUCLE_GlobIterator(iter:GlobIterator){args *.php}{pagination 5}>
			<li>#CLE => #VALEUR**</li>
		</BOUCLE_GlobIterator>
	</ul>
	Total : #TOTAL_BOUCLE<br />
	Grand Total : #GRAND_TOTAL
	[<p class='pagination'>(#PAGINATION)</p>]
</B_GlobIterator>


<h1>DirectoryIterator</h1>
<B_directoryIterator>
#ANCRE_PAGINATION
	<ul>
		<BOUCLE_directoryIterator(iter:DirectoryIterator){args #EVAL{_ROOT_RACINE}}{pagination 5}>
			<li>#CLE => #VALEUR**</li>
		</BOUCLE_directoryIterator>
	</ul>
	Total : #TOTAL_BOUCLE<br />
	Grand Total : #GRAND_TOTAL
	[<p class='pagination'>(#PAGINATION)</p>]
</B_directoryIterator>


}}}


Dans le cas des itérateurs existants dans PHP (SPL), un grand nombre ne sont pas exploitables de cette manière, par exemple {RecursiveDirectoryIterator} nécessite pour s'afficher un décorateur {RecursiveIteratorIterator}.
parent 644b5c04
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter