Server : Apache System : Linux webd348.cluster026.gra.hosting.ovh.net 5.15.148-ovh-vps-grsec-zfs-classid #1 SMP Thu Feb 8 09:41:04 UTC 2024 x86_64 User : hednacluml ( 122243) PHP Version : 8.3.9 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl Directory : /home/hednacluml/info/ecrire/iterateur/ |
<?php /***************************************************************************\ * SPIP, Système de publication pour l'internet * * * * Copyright © avec tendresse depuis 2001 * * Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James * * * * Ce programme est un logiciel libre distribué sous licence GNU/GPL. * \***************************************************************************/ use Spip\Compilateur\Noeud\Boucle; /** * Gestion de l'itérateur PHP * * @package SPIP\Core\Iterateur\PHP **/ if (!defined('_ECRIRE_INC_VERSION')) { return; } /** * Créer une boucle sur un itérateur PHP * * Annonce au compilateur les "champs" disponibles, c'est à dire * 'cle', 'valeur' et toutes les méthodes de l'itérateur désigné. * * @param Boucle $b * Description de la boucle * @param string $iteratorName * Nom de l'itérateur à utiliser * @return Boucle * Description de la boucle complétée des champs */ function iterateur_php_dist($b, $iteratorName) { $b->iterateur = $iteratorName; # designe la classe d'iterateur $b->show = [ 'field' => [ 'cle' => 'STRING', 'valeur' => 'STRING', ] ]; foreach (get_class_methods($iteratorName) as $method) { $b->show['field'][strtolower($method)] = 'METHOD'; } return $b; }