Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1453 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] operateur Like

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] operateur Like

n°1526928
chico008
what the wookie says ?
Posté le 10-03-2007 à 22:04:06  profilanswer
 

Bonjour
 
voila, j'ai un petit soucis
 
j'aimerais tester une variable qui contient du texte.
ce texte est en fait la partie gauche d'un texte plus grand. (avec un substr)
j'aimerais tester cette partie.
 
j'ai donc essayer avec un if ($var like "text%" )
 
mais ca n'a pas l'air de marcher, et du coup je sais pas trop comment faire.
une idée ?


Message édité par chico008 le 10-03-2007 à 22:14:30
mood
Publicité
Posté le 10-03-2007 à 22:04:06  profilanswer
 

n°1526943
Protohd
Posté le 10-03-2007 à 23:31:28  profilanswer
 

Bonsoir Chico008,  
 
Voici une proposition de réponse.
(je pense que "like" est réservé à mysql);
 

Code :
  1. <?PHP
  2. $mon_texte ="la petite voiture rouge";
  3. $ma_recherche_valide = "voiture";
  4. $ma_recherche_foireuse = "paris";
  5. // Avec strpos
  6. $testeur = strpos ($mon_texte, $ma_recherche_valide);
  7. Echo 'Voila ce qu\'affiche "strpos" si la recherche est valide : '.$testeur;
  8. Echo '<br>';
  9. $testeur = strpos ($mon_texte, $ma_recherche_foireuse);
  10. Echo 'Voila ce qu\'affiche "strpos" si la recherche n\'est pas valide : '.$testeur;
  11. Echo '<br><br>';
  12. Echo "Dans ce premier cas, la chaine a ete trouvee  si \$testeur != ''   ";
  13. Echo '<hr>';
  14. // Avec strstr  
  15. $testeur = strstr ($mon_texte, $ma_recherche_valide);
  16. Echo 'Voila ce qu\'affiche "strstr" si la recherche est valide : '.$testeur;
  17. Echo '<br>';
  18. $testeur = strstr ($mon_texte, $ma_recherche_foireuse);
  19. Echo 'Voila ce qu\'affiche "strstr" si la recherche n\'est pas valide : '.$testeur;
  20. Echo '<br><br>';
  21. Echo "Dans ce second cas aussi, la chaine a ete trouvee si \$testeur != ''   ";
  22. ?>


 
 

n°1526956
chico008
what the wookie says ?
Posté le 11-03-2007 à 00:20:30  profilanswer
 

le problème que j'ai, c'est que ce que je cherche est toujours au debut de ma chaine, doncen strpos j'aurais toujours 0, et j'ai quand meme essayer, mais apparement moi il fait pas la difference en un vide et un 0 du coup mon test ne marche pas.
 
par contre j'ai reussi a m'en tirer avec la fonction strstr
 
Merci ;)

n°1527080
math2k
Posté le 11-03-2007 à 17:02:56  profilanswer
 

chico008 a écrit :

le problème que j'ai, c'est que ce que je cherche est toujours au debut de ma chaine, doncen strpos j'aurais toujours 0, et j'ai quand meme essayer, mais apparement moi il fait pas la difference en un vide et un 0 du coup mon test ne marche pas.
 
par contre j'ai reussi a m'en tirer avec la fonction strstr
 
Merci ;)


 
En testant si strpos() === FALSE tu peux différencier le vrai false du 0.
 


AVERTISSEMENT
Cette fonction peut retourner FALSE, mais elle peut aussi retourner une valeur équivalent à FALSE, utilisable dans une condition if simple. Utilisez l'opérateur === pour tester la valeur de retour exacte de cette fonction.


 
http://be2.php.net/strpos


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] operateur Like

 

Sujets relatifs
[PHP Mysql] Champ de recherche[PHP] Questions sur le "include"
[Recherche outil PHP] A propos d'annuaire internetSSH, serveur dédié pour débutant, comment?
Erreur PHP/FTP - Warning: ftp_fget()[Résolu] Envoi d'un mail en PHP
[PHP][XML] Afficher xml dans page php[PHP] Redirection après formulaire
Résultat code PHP dans une variable --> include ?[PHP/Flash] - Barre de progression
Plus de sujets relatifs à : [PHP] operateur Like


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR