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

  FORUM HardWare.fr
  Programmation
  PHP

  [Résolu]Petite question trés simple pour comparaison entre deux chaine

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Résolu]Petite question trés simple pour comparaison entre deux chaine

n°1792187
otagun
http://www.go-f1.com Formule 1
Posté le 26-09-2008 à 01:09:00  profilanswer
 

Question trés simple.
Je veux comparer deux chaines  
 

Code :
  1. <?php
  2. if($_SERVER['SCRIPT_NAME'] == "/saison.php" )
  3. echo ' test OK';
  4. ?>


 
J'ai des pages saison-2.php par exemple et je veux que le test de comparaison soit toujours ok.
 
Avec SQL je sais qu'on peut rajouter '%' qui signifie que cela remplace un nombre indeterminé de caractéres. On s'en sert dans les test genre :  
" WHERE cat LIKE '%saison%'  "
 
J'aimerais faire de même avec php et donc j'ai marqué
 

Code :
  1. <?php
  2. if($_SERVER['SCRIPT_NAME'] == "/saison%" )
  3. echo ' test OK';
  4. ?>


 
Mais bon ca marche pas ^^
 
Comment il faut faire alors c'est qu'elle caractére qu'il faut employer ? "%" ?
 
C'est trés con comme question mais je bloque.


Message édité par otagun le 26-09-2008 à 12:40:31

---------------
>>>Go-F1.com Formule 1<<<
mood
Publicité
Posté le 26-09-2008 à 01:09:00  profilanswer
 

n°1792214
yellu
Posté le 26-09-2008 à 09:04:18  profilanswer
 

Salut,
 
Le == lors d'une comparaison de chaine t'obligera toujours à avoir le même nombre de caractère, et il n'y a pas de possibilité avec le == d'avoir l'effet d'un like.
 
Une solution est de découper la chaine à la longueur de celle a laquelle tu voudrais la comparer comme ça :
 
<?php
if(substr($_SERVER['SCRIPT_NAME'], 0, strlen('/saison')) == "/saison" )
echo ' test OK';
?>
 
ou encore comparer la position de la sous chaine :
 
<?php
if(strpos($_SERVER['SCRIPT_NAME'], "/saison" ) === 0) # attention a la triple égalité obligatoire (comparaison de type)
echo ' test OK';
?>


Message édité par yellu le 26-09-2008 à 09:05:05
n°1792384
otagun
http://www.go-f1.com Formule 1
Posté le 26-09-2008 à 12:39:25  profilanswer
 

D'accord merci beaucoup Yellu je ne savais pas que l'on ne pouvait pas avoir l'effet "Like" avec ==.  
 
Donc j'ai bien compris ton raisonnement pour arriver à la solution d'échange. Qui marche bien entendu. :)
 
Merci beaucoup de m'avoir aidé.  


---------------
>>>Go-F1.com Formule 1<<<

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

  [Résolu]Petite question trés simple pour comparaison entre deux chaine

 

Sujets relatifs
[Résolu] Problème avec une boucleQuestion noob déploiement site asp.net
Parcourir un répertoire (Résolu)[résolu]requete http en php, recuperer le code source d'une page web
[Python] [Resolu]temps en abscisse pour un graphremplacement chaine incrémentée
regex validant chaine de caractères pouvant être nullesimple question de type de variable
class CSS != balise style 0o [auto-résolu] 
Plus de sujets relatifs à : [Résolu]Petite question trés simple pour comparaison entre deux chaine


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