[PHP] faire une sorte d'operateur Like
Fermé
Nico
-
28 mars 2008 à 15:32
chico200987 Messages postés 791 Date d'inscription mardi 6 avril 2004 Statut Membre Dernière intervention 30 juillet 2018 - 28 mars 2008 à 16:54
chico200987 Messages postés 791 Date d'inscription mardi 6 avril 2004 Statut Membre Dernière intervention 30 juillet 2018 - 28 mars 2008 à 16:54
A voir également:
- [PHP] faire une sorte d'operateur Like
- Easy php - Télécharger - Divers Web & Internet
- 0650 quel opérateur - Forum Opérateurs & Réseaux mobiles
- 0473 quel opérateur - Forum Loisirs / Divertissements
- 0758 quel opérateur - Forum Opérateurs & Réseaux mobiles
3 réponses
chico200987
Messages postés
791
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
30 juillet 2018
143
28 mars 2008 à 16:23
28 mars 2008 à 16:23
Salut,
Je n'ai pas testé et je ne connais pas bien les fonctions que je vais te demander d'essayer mais tu peux peutêtre utiliser strpos()
Pour ton premier cas :
Ton deuxième cas :
Test et redis moi c'que ça donne j'peux pas tester maintenant s'ry.
Je n'ai pas testé et je ne connais pas bien les fonctions que je vais te demander d'essayer mais tu peux peutêtre utiliser strpos()
Pour ton premier cas :
<?php $pos = strpos($tachaine, "06"); if($pos == 0) { //Ca commence bien par 06 } ?>
Ton deuxième cas :
<?php $pos = strpos($tachaine, "06"); if($pos == 0) { //Ca commence bien par 06 if(strlen($tachaine) == 8) { //Ca commence par 06 et 6 caractères suivent après.. } else { //Commence par 06 mais ne fait pas 8 chrs en tout.. } } else { //Ne commence même pas par 06 } ?>
Test et redis moi c'que ça donne j'peux pas tester maintenant s'ry.
Merci pour ta réponse.
En effet, je pense que cette manière fonctionne, c'est d'ailleurs un code similaire que j'avais fait, mais mon idée finale serait de pouvoir ajouter autant de filtre/masque que je souhaite, sans avoir à toucher le code php.
Je m'explique avec un exemple :
je souhaiterais pouvoir déclaré à un endroit mes filtres/masques, ex :
$filtre[0]='06%';
$filtre[1]='06??????';
et que mon code PHP récupère ces filtres et vérifie que ma chaine est valide.
Mais si je rajoute les fliltres suivants :
$filtre[2]='08%';
$filtre[3]='09%';
je vais que mon code puisse interpréter ces nouvelles valeurs sans avoir à modifier le code PHP.
Tu vois le truc ?
En effet, je pense que cette manière fonctionne, c'est d'ailleurs un code similaire que j'avais fait, mais mon idée finale serait de pouvoir ajouter autant de filtre/masque que je souhaite, sans avoir à toucher le code php.
Je m'explique avec un exemple :
je souhaiterais pouvoir déclaré à un endroit mes filtres/masques, ex :
$filtre[0]='06%';
$filtre[1]='06??????';
et que mon code PHP récupère ces filtres et vérifie que ma chaine est valide.
Mais si je rajoute les fliltres suivants :
$filtre[2]='08%';
$filtre[3]='09%';
je vais que mon code puisse interpréter ces nouvelles valeurs sans avoir à modifier le code PHP.
Tu vois le truc ?
chico200987
Messages postés
791
Date d'inscription
mardi 6 avril 2004
Statut
Membre
Dernière intervention
30 juillet 2018
143
28 mars 2008 à 16:54
28 mars 2008 à 16:54
Hop,
Je crois voir, une fonction ne résoudrais pas ton problème ?
Je crois voir, une fonction ne résoudrais pas ton problème ?
<?php function valideFiltre(string $chaine, string $filtre, int $tailleStr) { $ok = false; $pos = strpos($chaine, $filtre); if($pos == 0) { if(strlen($chaine) == $tailleStr) { //C'est OK $ok = true; } return $ok; } //Pour l'appeler : $test = valideFiltre("06000000", "06", 8); if($test) { //Tout est OK ! } ?>