Browse Source

6 mois plus tard, il s'apperçoit qu'il lui manque un rein

master
jluc@no-log.org 2 years ago
parent
commit
57d55308c4
  1. 1
      .gitattributes
  2. 2
      paquet.xml
  3. 2
      plugin.xml
  4. 46
      switchcase_fonctions.php

1
.gitattributes

@ -5,4 +5,5 @@ images/switchcase-32.png -text
lang/paquet-switchcase_fr.php -text
/paquet.xml -text
/plugin.xml -text
/switchcase_fonctions.php -text
/switchcase_options.php -text

2
paquet.xml

@ -1,7 +1,7 @@
<paquet
prefix="switchcase"
categorie="outil"
version="0.4.0"
version="0.4.1"
etat="stable"
compatibilite="[2.1.0;3.3.*]"
logo="images/switchcase-32.png"

2
plugin.xml

@ -4,7 +4,7 @@
<icon>images/switchcase-32.png</icon>
<auteur>JLuc</auteur>
<licence>GPL</licence>
<version>0.4.0</version>
<version>0.4.1</version>
<etat>stable</etat>
<description>
Définition des balises #SWITCH, #CASE et #CASE_DEFAULT pour les créateurs de squelette, pour comparer une valeur à plusieurs autres.

46
switchcase_fonctions.php

@ -0,0 +1,46 @@
<?php
if (!defined("_ECRIRE_INC_VERSION")) {
return;
}
/**
* @param string $switch
* @param array ...$cases tableau suite des cas testés et valeurs renvoyées
* @return mixed la valeur correspondant au switch reçu
*
* Filtre |switchcase : comme |? mais pour plus de 2 valeurs
* La valeur par défaut doit être spécifiée en dernier par 'defaut', 'default' ou 'case_default'
* [(#TRUC|switchcase{
* banane,jaune,
* orange,orange,
* ciel,bleu,
* case_default,inconnue
* })]
* Ou bien : [(#TRUC|switchcase{
* banane,jaune,
* orange,orange,
* ciel,bleu,
* inconnue
* })]
*/
function switchcase($switch, ... $cases) {
$last_case = $case = $val = '';
$default_sans_case = (count($cases) % 2);
while ($case = array_shift($cases)) {
$val = array_shift ($cases);
if ($switch == $case) {
return $val;
}
$last_case = $case;
}
// dernier cas : case_default, <default_value>
if ($last_case == 'case_default') {
return $val;
}
// pas de value : case est la <default_value>
if ($default_sans_case) {
return $last_case;
}
return '';
}
Loading…
Cancel
Save