[RESOLU] comment faire la différence dans un string entre un "2" et un "22"

Petit nouveau ! | 2 Messages

05 juil. 2019, 15:16

Bonjour,
j'ai une variable de type string contenant une suite de chiffre du style
$machaine="22,14, 35,78";
Je dois au moyen d'une fonction, savoir si ma chaine contiens le nombre "2" (et pas "22")

Avec ce code, je trouve des 2 même si ils n'existent pas (en tant que nombre et pas chiffre)
if (stripos('22,14, 35,78', '2') !==false) {  echo ('je trouve plein de 2'); }
Par contre, ici, le chiffre 22 est bien trouvé (ce qui est logique ici)par contre, il me trouve aussi 2 même si il n'existe pas (en tant que nombre et pas chiffre)
if (stripos('22,14, 35,78', '22') !==false) {  echo ('il y a bien 22'); }
Malgré toutes mes recherches et test de code, je n'ai pas trouvé comment faire la différence dans ma chaine entre un "2" et un "22"
Quelq'un aurait une piste ?
Merci :priere:

Mammouth du PHP | 2703 Messages

05 juil. 2019, 15:26

https://regex101.com/r/8hkcbe/1 s'il n'y a pas l'espace après 14, sinon il faut avant enlever les espaces.
autre solution (sans espace) :
https://www.php.net/manual/fr/function.explode.php
puis https://www.php.net/manual/fr/function.in-array.php

Petit nouveau ! | 2 Messages

05 juil. 2019, 15:35

Merci beaucoup!! J'avais tenté regex mais étant ultra novice, ça n'avait rien donné. Là, c'est très clair. Merci