Comparaison de chaines de caracteres [PHP] - PHP - Programmation
Marsh Posté le 09-05-2003 à 19:48:24
$#*$$!!! j'vais devenir fou, le == ne marche pas, a l'aide!!!!!!!!
Marsh Posté le 09-05-2003 à 19:55:25
Code :
|
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)
Marsh Posté le 09-05-2003 à 20:13:07
Anuhmar a écrit : ok merci mais ca marche toujours pas |
tas ptet oublié un ;
Marsh Posté le 09-05-2003 à 20:14:40
$type = "bleu";
if ($type == "bleu" )
{
echo "c'est bleu";
}
else
{
echo "c'est pas bleu";
}
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
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 :
|
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!
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
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 ?
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
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
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?