Re: comparer les numéros de versions
SpipFactory <[email protected]> Sat, 17 Apr 2021 15:30:16 +0200
| Newsgroups | gmane.comp.web.spip.user |
|---|---|
| Message-ID | <[email protected]> |
Bon,
JLuc t'a donné les fonctions compare_version, je pense que ce sera plus
efficace que mes bricolages de php vs SPIP...
*Sandy*-Pascal Andriant
SpipFactory.fr <https://spipfactory.fr>
avatar Sandy
Le 17/04/2021 à 15:23, Jean-Christophe Villeneuve a écrit :
> hmm la première ligne fait ecore tout péter.
>
> Et attention, moi ce que je voudrais c'est plutôt transformer
> #PLUGIN{escal, version} de 4.4.11 et 004.004.011
>
> et pas #VERSION qui s'affiche déjà en 004.004.011
>
> JC
>
>
> Le 17/04/2021 à 14:50, SpipFactory a écrit :
>>
>> Ben oui, je m'a gouré
>>
>> pour explode, c'est impérativement le séparateur en 1°. 😬
>>
>> donc
>>
>>
>> $tab=explode('.', #VERSION);
>> $a = $tab[0]; $b = $tab[1]; $c = $tab[2];
>>
>> $array = ("[%03$a]","[%03$b]","[%03$c]");
>>
>> #VERSION = implode(".",$array);
>>
>>
>> *Sandy*-Pascal Andriant
>> SpipFactory.fr <https://spipfactory.fr>
>>
>> avatar Sandy
>>
>> Le 17/04/2021 à 14:02, Jean-Christophe Villeneuve a écrit :
>>> Hmm j'ai essayé de rajouter ça dans ma page
>>>
>>> <?php
>>> $tab=explode(#VERSION, '.');
>>> $a = $tab[0]; $b = $tab[1]; $c = $tab[2];
>>> #VERSION = CONCATENATE("[%03$a]",".","[%03$b]",".","[%03$c]");
>>> ?>
>>>
>>> version : #VERSION
>>>
>>> mais plus rien ne s'affiche du coup
>>> Pas de souci avec
>>>
>>> <?php
>>> echo "<p>bonjour monde</p>";
>>> ?>
>>>
>>> version : #VERSION
>>>
>>> Il doit donc y avoir un problème dans ton code, non ?
>>> Je dirais que #VERSION ne siginifie rien en php mais bon, je suis
>>> nul en php
>>>
>>> JC
>>>
>>>
>>>
>>> Le 17/04/2021 à 12:08, SpipFactory a écrit :
>>>>
>>>> Ce qui signifie que tu doistrouver la méthode en SPIP pour l'équivalent
>>>>
>>>> 1. $tab=explode(#VERSION, '.');
>>>> 2. $a = $tab[0]; $b = $tab[1]; $c = $tab[c];
>>>> 3. #VERSION = CONCATENATE("[%03$a]",".","[%03$b]",".","[%03$c]");
>>>>
>>>>
>>>> *Sandy*-Pascal Andriant
>>>> SpipFactory.fr <https://spipfactory.fr>
>>>>
>>>> avatar Sandy
>>>>
>>>> Le 17/04/2021 à 11:48, SpipFactory a écrit :
>>>>>
>>>>> Bonjour,
>>>>>
>>>>>
>>>>> A mon avis tu prends le pb à l'envers. Si tu veux faire du tri
>>>>> numérique, il ne faut pas supprimer les 0 à gauche mais au
>>>>> contraire ajouter ceux qui manquent pour que tout soit au format
>>>>>
>>>>> #VERSION
>>>>> affiche 004.004.011
>>>>>
>>>>>
>>>>> De la sorte tu auras
>>>>>
>>>>> #VERSION
>>>>> affiche 004.004.008 < 004.004.011
>>>>>
>>>>>
>>>>> *Sandy*-Pascal Andriant
>>>>> SpipFactory.fr <https://spipfactory.fr>
>>>>>
>>>>> avatar Sandy
>>>>>
>>>>> Le 17/04/2021 à 11:42, Jean-Christophe Villeneuve a écrit :
>>>>>> Bonjour
>>>>>>
>>>>>> Dans mon plugin escal, je voudrais pouvoir afficher si on a la
>>>>>> dernière version ou s'il y a une version disponible plus récente.
>>>>>>
>>>>>> Sachant que pour une version 4.4.11
>>>>>>
>>>>>> #PLUGIN{escal, version}
>>>>>> affiche 4.4.11
>>>>>>
>>>>>> #VERSION
>>>>>> affiche 004.004.011
>>>>>>
>>>>>> [(#VERSION|replace{0})]
>>>>>> affiche 4.4.11
>>>>>>
>>>>>> [(#VAL{/\.0*/}|preg_replace{'.',#VERSION}|ltrim{0})]
>>>>>> affiche 4.4.11
>>>>>>
>>>>>>
>>>>>> Avec beaucoup d'aide je suis arrivé à ça
>>>>>>
>>>>>> <BOUCLE_version(spip_paquets){prefixe=ESCAL}{!par version}{0,1}>
>>>>>>
>>>>>> [(#VERSION|replace{0}|>{#PLUGIN{escal, version}}|oui)
>>>>>> <h5><:escal:version_maj:>
>>>>>> [(#VAL{/\.0*/}|preg_replace{'.',#VERSION}|ltrim{0})]</h5>
>>>>>> ]
>>>>>> [(#VERSION|replace{0}|>{#PLUGIN{escal, version}}|non)
>>>>>> <h5><:escal:version_ok:></h5>
>>>>>> ]
>>>>>> </BOUCLE_version>
>>>>>>
>>>>>> Mais avec ce code la version 4.4.8 est considérée comme
>>>>>> supérieure à la 4.4.11
>>>>>>
>>>>>> Donc quelques questions :
>>>>>>
>>>>>> * comment faire pour que la 4.4.11 soit bien vue comme
>>>>>> supérieure à la 4.4.8 ?
>>>>>> * quelle différence entre [(#VERSION|replace{0})] et
>>>>>> [(#VAL{/\.0*/}|preg_replace{'.',#VERSION}|ltrim{0})] ?
>>>>>> * ne serait-ce pas plus simple de transformer #PLUGIN{escal,
>>>>>> version} de 4.4.11 et 004.004.011 pour la comparaison ensuite
>>>>>> (mais avec quelle regex ?) ?
>>>>>>
>>>>>> Merci pour l'aide
>>>>>>
>>>>>> JC
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> liste spip
>>>>>> [email protected] - désabonnement : envoyer un mail à[email protected]
>>>>>>
>>>>>> Archives :https://www.mail-archive.com/[email protected]/maillist.html
>>>>>>
>>>>>> Infos :https://listes.rezo.net/mailman/listinfo/spip
>>>>>>
>>>>>> Documentation de SPIP :http://www.spip.net/
>>>>>>
>>>>>> Irc : de l'aide à toute heure :http://spip.net/irc
>>>>
>>>> _______________________________________________
>>>> liste spip
>>>> [email protected] - désabonnement : envoyer un mail à[email protected]
>>>>
>>>> Archives :https://www.mail-archive.com/[email protected]/maillist.html
>>>>
>>>> Infos :https://listes.rezo.net/mailman/listinfo/spip
>>>>
>>>> Documentation de SPIP :http://www.spip.net/
>>>>
>>>> Irc : de l'aide à toute heure :http://spip.net/irc
>>>
>>>
>>> _______________________________________________
>>> liste spip
>>> [email protected] - désabonnement : envoyer un mail à[email protected]
>>>
>>> Archives :https://www.mail-archive.com/[email protected]/maillist.html
>>>
>>> Infos :https://listes.rezo.net/mailman/listinfo/spip
>>>
>>> Documentation de SPIP :http://www.spip.net/
>>>
>>> Irc : de l'aide à toute heure :http://spip.net/irc
>>
>> _______________________________________________
>> liste spip
>> [email protected] - désabonnement : envoyer un mail à[email protected]
>>
>> Archives :https://www.mail-archive.com/[email protected]/maillist.html
>>
>> Infos :https://listes.rezo.net/mailman/listinfo/spip
>>
>> Documentation de SPIP :http://www.spip.net/
>>
>> Irc : de l'aide à toute heure :http://spip.net/irc
>
>
> _______________________________________________
> liste spip
> [email protected] - désabonnement : envoyer un mail à [email protected]
>
> Archives : https://www.mail-archive.com/[email protected]/maillist.html
>
> Infos : https://listes.rezo.net/mailman/listinfo/spip
>
> Documentation de SPIP : http://www.spip.net/
>
> Irc : de l'aide à toute heure : http://spip.net/irc