IL n'est pas possible de passer des variables en parametre de boucles
spip, cf une reponse de ARNO a un de mes messages ou je posais la meme
question que toi:
----- Message d'origine -----
De : "ARNO*" <arno@scarabee.com>
À : "Guillaume JAN" <gj@oggam.org>; <spip@rezo.net>
Envoyé : mercredi 6 février 2002 13:22
Objet : Re: [Spip] Passer des variables php en parametre de criteres de
boucles?
At 11:51 +0100 6/02/02, Guillaume JAN wrote:
>Bonjour tout le monde,
>Dites pourquoi est ce qu'on ne peut pas passer des variables php en
>parametres des critères des boucles? Peut etre fais-je une bévue,
>voici
le
>type de truc que j'aimerais pouvoir faire:
>
>
><BOUCLE_recupLesParents(RUBRIQUES){id_secteur=$leSecteur}>
> print("<BR>Les rub du secteur $leSecteur c'est #ID_RUBRIQUE");
></BOUCLE_recupLesParents>Salut,
Bon, y'a la réponse de Fil, mais je complète...
Vu ton code, à priori c'est impossible, sauf énormes manipulations.
C'est une erreur que je commets régulièrement, parce que ça semble une
solution facile: bidouiller une variable dans le squelette, et tenter
de la faire passer comme critère directement dans une boucle.Or de cette façon, ça n'est pas possible: lorsqu'il analyse les
boucles, SPIP ne travaille pas sur le code PHP, mais sur du texte brut
(c'est une analyse de texte); s'il y a du PHP dans le squelette, SPIP
s'en fiche, et le sauvegarde tel quel dans le fichier cache. C'est
seulement au moment de l'affichage de la page que PHP est interprété,
donc tout à la fin, donc longtemps après l'analyse des boucles. Bref:
comme PHP est analysé _après_ les boucles, il est impossible de
balancer du PHP comme critère des boucles.Sauf exceptions prévues (et rares, telles que debut_forum), indiquées
par
Fil.
ARNO*