Balises #SWITCH #CASE et filtre |switchcase - commentairesBalises #SWITCH #CASE et filtre |switchcase2024-04-18T21:20:06Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment5149032024-04-18T21:20:06Z<p>Oui c'est compatible.</p>Balises #SWITCH #CASE et filtre |switchcase2024-04-18T21:19:17Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment5149022024-04-18T21:19:17Z<p>Vu que SPIP met les résultats en cache, sauf contexte d'usage particulier l'impact en terme de performance reste faible.</p>
<p>Autre soluce si c'est juste des <code class="spip_code spip_code_inline" dir="ltr">if (val1) then (val2)</code> et rien de plus : alors tu peux mettre tous les couples <i>case/url</i> dans un <code class="spip_code spip_code_inline" dir="ltr">#ARRAY</code> et utiliser un filtre (fonction PHP définie sur mesure selon le contexte / la répartition des valeurs etc) qui s'applique sur ce tableau et en renvoie la valeur d'url à utiliser dans un #SET en fonction de l'argument. Donc genre <code class="spip_code spip_code_inline" dir="ltr">#SET{url,#ARRAY{A,u1,B,u2,C,u3}|choisir{argument}}</code></p>Balises #SWITCH #CASE et filtre |switchcase2024-04-18T12:58:36Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment5148922024-04-18T12:58:36Z<p>Hello,<br class="autobr">
J'ai une situation dans laquelle il faut tester une soixante de valeurs. Quelque chose comme<br class="autobr">
si argument =1, alors aller à l'url machin<br class="autobr">
si argument = 2, alors aller à l'url truc<br class="autobr">
(...)<br class="autobr">
si argument = 60, alors aller à l'url bidule</p>
<p>du coup, avec ce plugin<br class="autobr">
SWITCH<i>argument</i><br class="autobr">
CASE<i>1</i> url= machin<br class="autobr">
CASE<i>2</i> url= truc <br class="autobr">
(...)<br class="autobr">
CASE<i>60</i> url=bidule</p>
<p>Ma question : est-ce réaliste<small class="fine d-inline"> </small>? Trop gourmand en performance<small class="fine d-inline"> </small>? Une façon plus light de tester cette série de valeurs de l'argument<small class="fine d-inline"> </small>?</p>Balises #SWITCH #CASE et filtre |switchcase2023-06-14T05:37:17Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment5135322023-06-14T05:37:17Z<p>Bonjour et merci pour ce plugin... Y a-t-il un retour pour l'utilisation de ce plugin sous spip 4.2<small class="fine d-inline"> </small>? Quelqu'un a-t-il déjà essayé en modifiant les bornes de version<small class="fine d-inline"> </small>?</p>Balises #SWITCH #CASE et filtre |switchcase2022-10-09T09:37:20Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment5118992022-10-09T09:37:20Z<p><strong>Version 0.5</strong> : ll est possible de spécifier plusieurs valeurs testées par un même #CASE. La doc est mise à jour.</p>Balises #SWITCH et #CASE2019-11-27T08:18:38Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment5031712019-11-27T08:18:38Z<p><strong>Version 0.4</strong> un filtre <code class="spip_code spip_code_inline" dir="ltr">|switchcase</code> s'ajoute aux balises. La documentation est mise à jour.</p>Balises #SWITCH et #CASE2017-06-28T14:30:54Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment4926862017-06-28T14:30:54Z<p>La doc est complétée par un <strong>Exemple d'usage</strong> :</p>
<p>Vous souhaitez ranger toute une panoplie de squelettes json (<code class="spip_code spip_code_inline" dir="ltr">calendrier.json, lesfestivals.json, programmation.json... </code>) dans un sous répertoire <code class="spip_code spip_code_inline" dir="ltr">json</code>, mais vous souhaitez pouvoir y accéder via ajax. Or, les squelettes rangés dans un sous répertoire ne peuvent être accédés que par un webmestre. Pour ajax, vous pouvez passer par un squelette d'aiguillage à la racine, qui prend un argument « squel » et dont le code serait :</p>
<div class="precode"><pre class="spip_code spip_code_block" dir="ltr" style="text-align:left;"><code>#SWITCH{#SQUEL})
[(#CASE{calendrier}) <INCLURE{json/calendrier.json,mois=#MOIS}>]
[(#CASE{lesfestivals}) <INCLURE{json/lesfestivals.json,region=#REGION}>]
[(#CASE{programmation}) <INCLURE{json/programmation.json,groupe=#GROUPE}>]</code></pre></div>Balises #SWITCH et #CASE2016-09-19T18:50:16Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment4890592016-09-19T18:50:16Z<p><strong>Version 0.3.0, marquée stable </strong> : la balise <code class="spip_code spip_code_inline" dir="ltr">#DEFAULT</code> est renommée <code class="spip_code spip_code_inline" dir="ltr">#CASE_DEFAULT</code> par anticipation visionnaire des potentiels et hypothétiques conflits de nommage pouvant survenir dans un futur impossible à tout à fait exclure.</p>Balises #SWITCH et #CASE2016-09-04T19:36:47Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment4888182016-09-04T19:36:47Z<p>Si, mais de même que de nombreux filtres ou balises ne sont pas strictement nécessaires et servent simplement à simplifier la vie, c'est plus simple, plus lisible et plus agréable à coder certains squelettes avec ces balises.</p>Balises #SWITCH et #CASE2016-09-04T07:55:47Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment4888092016-09-04T07:55:47Z<p>N'est-ce pas déjà parfaitement réalisable avec les filtres de test de SPIP<small class="fine d-inline"> </small>?</p>Balises #SWITCH et #CASE2016-06-04T21:03:53Zhttps://files.spip.org/Balises-et-filtre-switch-case#comment4878132016-06-04T21:03:53Z<p>Mis à jour : il y a maintenant aussi la balise <code class="spip_code spip_code_inline" dir="ltr">#DEFAULT</code> pour clore le triptyque habituel.</p>