IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Faire une recherche d'une chaine dans une autre chaine


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Faire une recherche d'une chaine dans une autre chaine
    Bonjour à tous,

    je cherche le moyen de faire une recherche d'une chaine dans une autre chaine.

    En gros j'ai deux variables : $findme = '27' et $chaine = '1;5;10;27;'

    et je voudrais réaliser un test qui vérifie si mon $findme est compris dans $chaine.

    j'ai déja fait quelques essais mais non concluant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    $findme= '27'
    	$test = strpos($findme, $chaine);
    	if($test === false)
    	{
    		$findme= -1;
    	}

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ton code fonctionne.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    par contre si tu cherches 2 il va le trouver aussi, c'est que tu souhaites ?

  4. #4
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    C'est l'inverse : int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )

    Donc ton code doit être:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (strpos($chaine, $findme) !== false) { 
      echo "trouvé";
    }
    On cherche toujours l'aiguille dans la botte de foin et non l'inverse...

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par Benjamin Delespierre Voir le message
    C'est l'inverse : int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )

    Donc ton code doit être:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (strpos($chaine, $findme) !== false) { 
      echo "trouvé";
    }
    On cherche toujours l'aiguille dans la botte de foin et non l'inverse...
    sauf que la c'est : botte de foin et aiguille
    donc le mémo-technique ne marche pas (sauf pour les fonctions array ou la c'est bon)

  6. #6
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 105
    Points : 49
    Points
    49
    Par défaut
    Mon problème n'est pas résolu, je vais mettre mes valeurs exactes plutot que des exemples

    dept = 55 depts = 12;14;21;27;31;35;39;55;61;64;67;71;76;79;85;89;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $test = strpos($dept, $depts);
    if($test === false)
    {
    	$dept = -1;
    }
    sur cette exemple $dept = -1... je ne comprend pas pourquoi

  7. #7
    Membre du Club
    Inscrit en
    Mars 2010
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Mars 2010
    Messages : 105
    Points : 49
    Points
    49
    Par défaut
    Rah de rah, mon $dept et $depts étaient inversés...

    Merci !

  8. #8
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    J'ai pas mentionné de moyen mnémotechnique...

    Chopez votre cheatsheet et imprimez là, ça sert toujours: http://www.addedbytes.com/cheat-sheets/php-cheat-sheet/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [CakePHP] Comment faire une recherche avec deux mots dans une table
    Par pierrot10 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 12/02/2014, 23h20
  2. Résultat d'une recherche qui s'ouvre dans une nouvelle fenetre
    Par greg13100 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 24/01/2014, 17h33
  3. Recherche dans une chaîne des codes contenus dans une table
    Par funkyjul dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/07/2011, 08h28
  4. [Toutes versions] Recherche de données dans une feuille pour les copier dans une autre
    Par mattdogg97 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 07/02/2011, 14h22
  5. Faire la recherche d'un élement dans une colonne avec la fonction match
    Par ckrikri dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 24/11/2008, 11h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo