Titre: Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: franky26 le le 24-08-2006 a 22:45:41
Bonjour,
Je suis à la recherche d'une fonction PHP qui permet de vérifier si une chaîne de caractère ($chaine1) en contient une autre ($chaine2).
ex.: $chaine1 = "bonjour comment ça va" $chaine2 = "comment" > La fonction retourne «vrai» car la chaine 1 contient le mot «comment».
Merci beaucoup! |
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: tavman le le 25-08-2006 a 01:18:10
google est ton ami......................................................................................
Bon allé... strchr() ca suffira je pense |
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: MarvinLeRouge le le 26-08-2006 a 02:21:42
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: tavman le le 27-08-2006 a 00:18:18
Heuu nan Marvin... Enfin si mais faut faire gaffe avec le strpos : il renvoit -1 si la chaine ne contient pas la recherche... Et puis elle retourne la position de la chaine recherchée, pas true ou false...
strchr renvoit true ou false par contre... |
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: MarvinLeRouge le le 27-08-2006 a 12:20:15
oki (j'me coucherai moins con ce soir ... à moins que je ne refasse mon stock dans l'intervalle ::) ) |
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: tavman le le 27-08-2006 a 18:17:34
Bahh en fait, suffit d'essayer de traduire :
strchr => string search strpos => string position
et dans la string "comment ca va" si tu recherche "comment" ca te renvoit 0 qui est interpreté comme false...
un dernier conseil a franky : vaut peut etre mieux que tu remette toutes tes string (celle ou tu fait la recherche et celle que tu recherche) en minuscule (avec strtolower(String) ) sinon ca marchera pas... |
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: MarvinLeRouge le le 28-08-2006 a 10:52:36
Bahh en fait, suffit d'essayer de traduire :
strchr => string search strpos => string position
et dans la string "comment ca va" si tu recherche "comment" ca te renvoit 0 qui est interpreté comme false...
|
|
seulement si tu fais ton test avec ==, pas si tu le fais avec === :) |
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: tavman le le 28-08-2006 a 12:59:10
heuuu oui mais si tu fait === de toute facon, tu peut etre sur que ca te renverra jamais true....
if ( strpos() === true ) {}
ca fonctionnera jamais mais effectivement :
if ( strpos() != -1 ) {}
ca reviendra a faire strchr(). En plus, strchr, même pas besoin de mettre ==...
if ( strchr () ) { }
ca suffit puisque la fonction renvoit déjà un booléen... je dirait même que
if ( strchr() == true ) {}
c'est une grosse faute (que mes profs de prog n'acceptent plus depuis lontemps). |
Titre: Re:Fonction pour vérifier si un chaîne de caractère contient un mot
Posté par: MarvinLeRouge le le 29-08-2006 a 10:21:35
OK d'accord, je devais être bien fatigué pour écrire des bêtises pareilles moi.
Ce que je voulais dire pour franky26, c'est que le === false (ou === true) peut servir quand on veut s'assurer que la valeur correspond à la valeur booléenne en question ET qu'elle est du bon type. Exemple : une valeur 0 sera interprétée comme false, mais on la détecte correctement avec un ===, ce qui sert avec certaines fonctions similaires à celles-ci. |
Forum-webmaster | Actionné par YaBB SE
© 2001-2003, YaBB SE Dev Team. Tous droits réservés.
|