Bonsoir,
comment récupérer un élément d'un tableau crée avec array et affecté à une variabl test avec #SET, via sa clé ???
#SET{test,#ARRAY{cle1,val1,cle2,val2}}
comment récupérer #GET{test}=>cle2 ???
J'ai pas trouvé la doc sur la syntaxe.
Merci
RB
Bonsoir,
comment récupérer un élément d'un tableau crée avec array et affecté à une variabl test avec #SET, via sa clé ???
#SET{test,#ARRAY{cle1,val1,cle2,val2}}
comment récupérer #GET{test}=>cle2 ???
J'ai pas trouvé la doc sur la syntaxe.
Merci
RB
Le 29/07/07, rburton a écrit :
Bonsoir,
comment récupérer un élément d'un tableau crée avec array et affecté à
une variabl test avec #SET, via sa clé ???#SET{test,#ARRAY{cle1,val1,cle2,val2}}
comment récupérer #GET{test}=>cle2 ???
J'ai pas trouvé la doc sur la syntaxe.
Dans Les balises propres au site - SPIP :
La balise #SET{variable,valeur} et son pendant #GET{variable} ont été
introduites par SPIP 1.9.1. La balise #SET{xxx,yyy} affecte une valeur
yyy à une variable xxx propre au squelette calculé. Cette valeur peut
être récupérée par la balise #GET{xxx}. Les variables créées ainsi ne
sont pas transmises au squelette inclus.
et SPIP 1.9.2 - SPIP :
et #ARRAY{cle1,valeur1,cle2,valeur2...} permet de créer une variable
tableau (utile pour affecter un tableau dans un #SET et/ou pour
utilisation dans un critère IN dynamique)
et Les critères communs à toutes les boucles - SPIP pour le IN
{xxxx IN a,b,c,d} à partir de [SPIP 1.8], limite l'affichage aux
résultats ayant le critère xxxx égal à a, b, c ou d. Les résultats
sont triés dans l'ordre indiqué (sauf demande explicite d'un autre
critère de tri). Il est aussi possible de sélectionner des chaînes de
caractères, par exemple avec {titre IN 'Chine', 'Japon'}.
Avec SPIP 1.9, les balises sont admises dans les arguments de IN, et
notamment la balise ENV, ............
Peut-être simplement avec {titre IN 'Chine', 'Japon'} où Chine=cle1, ....
Pour les docs sur les balises.. Glossaire - SPIP surtout pendant
les vacances ![]()
--
@plus
Jacques
Pour les lyonnais++ spip-lyon@rezo.net http://spip-party.net/-Lyon-
Plugins zippés Téléchargement : http://spip.jermer.fr/?Liste-des-zip-produits
Remercier Spip et les plugins (Crédits) :
http://spip.jermer.fr/?Plugin-plugins-actifs-version-5
Gérer ses squelettes & thèmes en interne :
Bonsoir
Ben j'avais lu ...
Mais mon cerveau doit être embrumé
Peut-être simplement avec {titre IN 'Chine', 'Japon'} où Chine=cle1, ....
Pour les docs sur les balises.. Glossaire - SPIP surtout pendant
les vacances
si je reprends mon exemple
#SET{test,#ARRAY{cle1,val1,cle2,val2}}
je ne veux pas faire un test ... sinon j'utiliserais un filtre - fonction php (une des fonctions array-qqchose).
je veux simplement ramener une valeur (inconnue) par le moyen de sa clé, via une balise de type #GET{test[cle2]}
les trois articles que tu cites et l'exemple que tu me donnes me permettent de tester si la valeur est prsente dans le tableau mais pas de récupérer directement une valeur via sa clé ???
je n'ai trouvé nulle part un exemple de syntaxe pour ce que je veux faire...
où c'est moi qui suis décidément bon à aller dormir ?
Merci
RB
Bonjour
J'ai utilisé dans un script (que j'ai laissé tombé parce qu'il ne
fonctionnait pas, et que l'on peut obtenir le résultat avec le
critère doublons)
#ARRAY{#GET{cmptrindex},#DATE}
et, j'ai utilisé les autres fonctions : array_merge par exemple.
Je ne sais pas si c'est que tu recherches exactement comme exemple,
j'espère que ça t'aidera.
A bientôt
Grégoire
Grégoire a écrit :
Bonjour
J'ai utilisé dans un script (que j'ai laissé tombé parce qu'il ne
fonctionnait pas, et que l'on peut obtenir le résultat avec le
critère doublons)#ARRAY{#GET{cmptrindex},#DATE}
et, j'ai utilisé les autres fonctions : array_merge par exemple.
Je ne sais pas si c'est que tu recherches exactement comme exemple,
j'espère que ça t'aidera.A bientôt
Grégoire
Bonjour,
merci, mais c'est toujours pas ça (à moins d'avoir mal lu ton code)
en faisant
#SET{test,#ARRAY{1,'val1',2,'val2'}}
#ARRAY{#GET{test},2}
j'obtiens
<b>Warning</b>: Illegal offset type in <b>/home/www/a3af547134cfe76edecdb4ce0bfe3c54/web/ecrire/public/composer.php(71) : eval()'d code</b> on line <b>367</b><br />
c'est dingue ça que ce soit si "obscur" de récupérer un valeur d'un tableau via sa clé quand on s'est donné la peine de créer cette balise #array !
Merci
RB
rburton wrote:
en faisant
#SET{test,#ARRAY{1,'val1',2,'val2'}}
c'est dingue ça que ce soit si "obscur" de récupérer un valeur d'un tableau via sa clé quand on s'est donné la peine de créer cette balise #array !
Oui, alors tu peux aaplliquer les fontion php dessus deja, genre :
[(#GET{test}|array_pop)]
Par extension tu peux aussi te faire un filtre
[(#GET{test}|valeur{2})] par ex
avec
function valeur($tableau,$cle){
return $tableau[$cle] ;
}
ca te donnera val2 si je ne dis pas de bétise.
Mais je suis d'accord que la doc n'est pas très claire sur l'utilisation de la balise #ARRAY en dehors du IN dynamique.
BoOz
Ah, en fait cerdic nous signale que le filtre existe déjà et que c'est
[(#ARRAY|table_valeur{cle})]
BoOz
BoOz wrote:
Oui, alors tu peux aaplliquer les fontion php dessus deja, genre :
[(#GET{test}|array_push)]
Par extension tu peux aussi te faire un filtre
[(#GET{test}|valeur{2})] par ex
avec
function valeur($tableau,$cle){
return $tableau[$cle] ;
}