[PHP] Comparaison de chaines de caracteres

Comparaison de chaines de caracteres [PHP] - PHP - Programmation

Marsh Posté le 09-05-2003 à 19:43:38    

existe-t-il comme en C, une fonction qui compare les chaines de caracteres (en C: strcmp), et qui renvoie vraie si les 2 chaines sont identiques?

Reply

Marsh Posté le 09-05-2003 à 19:43:38   

Reply

Marsh Posté le 09-05-2003 à 19:46:49    

strcmp  :ange:

Reply

Marsh Posté le 09-05-2003 à 19:48:24    

$#*$$!!! j'vais devenir fou, le == ne marche pas, a l'aide!!!!!!!!

Reply

Marsh Posté le 09-05-2003 à 19:55:25    

Code :
  1. if (strcmp($chain1, $cahine2) == 0) {
  2. // chaine identique
  3. }

Reply

Marsh Posté le 09-05-2003 à 20:10:25    

ok merci mais ca marche toujours pas
je suis novice en php c'est-a-dire completement nul
 
voici mon code:
 
$type = "bleu"
 
if(strcmp($type, "bleu" ) == 0) print 'vraie';
else print 'faux';
 
eh bien ca me renvoie faux
 
faut-il declarer 'type' comme string?(je ne sais meme pas si on peut declarer des variables en php)

Reply

Marsh Posté le 09-05-2003 à 20:13:07    

Anuhmar a écrit :

ok merci mais ca marche toujours pas
je suis novice en php c'est-a-dire completement nul
 
voici mon code:
 
$type = "bleu";
 
if(strcmp($type, "bleu" ) == 0) print 'vraie';
else print 'faux';
 
eh bien ca me renvoie faux
 
faut-il declarer 'type' comme string?(je ne sais meme pas si on peut declarer des variables en php)
 


 
tas ptet oublié un ;

Reply

Marsh Posté le 09-05-2003 à 20:14:40    

$type = "bleu";
if ($type == "bleu" )
{
echo "c'est bleu";
}
else
{
echo "c'est pas bleu";
}

Reply

Marsh Posté le 09-05-2003 à 20:14:43    

ouais mais c pas ca lol
j'ai pas fait un copier coller
 
nan ca marche pas ce bazar

Reply

Marsh Posté le 09-05-2003 à 20:15:20    

ok j'vais tester ton deuxieme exemple

Reply

Marsh Posté le 09-05-2003 à 20:16:40    

tu passes $type dans l'url ou il est déclaré dans la page ?
 
dans le premier cas :
 

Code :
  1. if(strcmp($_GET['type'], "bleu" ) == 0) print 'vraie';
  2. else print 'faux';


 


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 09-05-2003 à 20:16:40   

Reply

Marsh Posté le 09-05-2003 à 20:25:16    

ok merci les mecs mais j'ai trouve d'ou venait le pb (perdu une heure pour ca, y a de koi se pendre)
 
exemple: je stocke bleu dans un varchar(10), donc les 6 derniers octets sont vides, mais evidemment ce sgbd de *$£$$!!!! ne fout pas de '\0' a la fin
 
donc a la recuperation de la chaine, je fais un strncmp, et la ca roule ma poule! (je compare que les 4 premiers caracteres)
 
encore heureux que les fonctions C existent en php, encore un GRAND merci les gars!!! j'ai appris des trucs ki vont m'servir!

Reply

Marsh Posté le 09-05-2003 à 20:46:29    

Pq tu veux pas du
 
if($test=='bleu';) ?

Reply

Marsh Posté le 09-05-2003 à 23:40:59    

nan en fait dans mon cas, j'suis oblige de comparer les n premiers caracteres, le test que tu propose ne resoudrait pas mon probleme, donc c pour ca que j'utilise strncmp a la place

Reply

Marsh Posté le 10-05-2003 à 00:29:05    

Sinon il doit bien y avoir une fonction genre trim qui vire les espaces en début et fin de chaîne, non ?


Message édité par antp le 10-05-2003 à 00:29:15

---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
Reply

Marsh Posté le 10-05-2003 à 00:31:24    

antp a écrit :

Sinon il doit bien y avoir une fonction genre trim qui vire les espaces en début et fin de chaîne, non ?


 
oui trim() pour virer ceux en debut et fin de chaine rtrim() et ltrim() ... je vous laisse deviner [:boidleau]

Reply

Marsh Posté le 10-05-2003 à 00:32:59    

oui trim
 
et strncmp existe aussi, enfin il me semble qu il fait pas l effort de chercher un minimum ds la doc

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed