|
Publicité ' | ||||||||||||||||||||||||
|
|
#1 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Bonjour,
je compare 2 variables (if (strtolower($patr[1])==$fstname))) qui, quand je fais un echo semblent identiques, mais que quand j'affiche la longueur des strings, la première fait un caractère de plus : d'où cela peut-il venir et comment le supprimer (car elles devraient être identiques) ?
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
00
|
|
|
#2 | |
![]() ![]() |
Citation:
Essaye trim()
__________________
modérateur webmasters - développements web & php faq jQuery - règles du forum - faqs web mon espace persoVenez participez au deuxième defi Web !
|
|
|
00
|
|
|
#3 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
J'ai essayé trim (if (trim(strtolower($patr[1]))==trim($fstname))), mais la différence persiste
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
00
|
|
|
#4 |
![]() ![]() |
Je ne suis pas expert en php mais, il devrais y avoir des fonctions de comparaison de chaine.
Le "==" par expérience n'est jamais sûr... Essaye avec similar_text() ou strcmp() http://php.net/manual/fr/function.similar-text.php http://php.net/manual/fr/function.strcmp.php
__________________
modérateur webmasters - développements web & php faq jQuery - règles du forum - faqs web mon espace persoVenez participez au deuxième defi Web !
|
|
00
|
|
|
#5 | ||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
J'oubliais, il y a du mieux avec le trim car la longueur des strings est devenue identique, mais la comparaison continue d'échouer :
Code :
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
||
|
|
00
|
|
|
#6 | |||
![]() ![]() |
Citation:
faire un strtolower des deux coté.
__________________
modérateur webmasters - développements web & php faq jQuery - règles du forum - faqs web mon espace persoVenez participez au deuxième defi Web !
|
|||
|
00
|
|
|
#7 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
mais ça continue d'échouer : if (strcmp(trim(strtolower($patr[1])),trim(strtolower($fstname))))
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
00
|
|
|
#8 |
![]() ![]() Inscription : septembre 2010 Messages : 7 161 ![]() |
les chaines viennent d’où ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#9 | |
![]() ![]() |
Citation:
__________________
modérateur webmasters - développements web & php faq jQuery - règles du forum - faqs web mon espace persoVenez participez au deuxième defi Web !
|
|
|
00
|
|
|
#10 |
![]() ![]() Inscription : septembre 2010 Messages : 7 161 ![]() |
normale c'est pas le même encodage, visuellement c'est la même chose, mais pas au niveau des caractères
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#11 | |
![]() ![]() |
Citation:
![]()
__________________
modérateur webmasters - développements web & php faq jQuery - règles du forum - faqs web mon espace persoVenez participez au deuxième defi Web !
|
|
|
00
|
|
|
#12 | ||
![]() ![]() Inscription : septembre 2010 Messages : 7 161 ![]() |
non aucun rapport c'est coté client le problème, PHP lui voit bien que la chaine est différente
Code :
__________________
http://blog.stealth35.com/ |
||
|
|
10
|
|
|
#13 | ||||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Citation:
Code :
Citation:
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
||||
|
|
00
|
|
|
#14 |
![]() ![]() Inscription : septembre 2010 Messages : 7 161 ![]() |
fait un mb_convert_encoding comme dans mon exemple, pour trouver l'encodage c'est pareil, si la chaine est 2 foix plus longue c'est que c'est de l'UTF-16, et 3 fois de l'UTF-32
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#15 | ||
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Quelle que soit la conversion (voici un exemple :
Code :
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
||
|
|
00
|
|
|
#16 |
![]() ![]() Inscription : septembre 2010 Messages : 7 161 ![]() |
c'est pas ce qu'il faut faire, déjà enlève tout les fonction inutile pas,
comme je te l'ai dit plut haut il faut d’abord savoir quelle est l'encodage de la chaine ?
__________________
http://blog.stealth35.com/ |
|
|
00
|
|
|
#17 |
|
Débutant
Laurent Webmaster Inscription : octobre 2006 Messages : 2 873 ![]() |
Génial
, mais je n'y comprends rien : j'ai viré le trim et pour en avoir le coeur net la conversion aussi (if (strcmp(strtolower($patr[1]),strtolower($fstname))))...et ça marche !
__________________
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell |
|
|
00
|
|
|
#18 |
|
Membre éclairé
![]() Développeur Web Inscription : mars 2008 Messages : 426 ![]() |
Bonjour,
J'ai le même problème mais je ne comprend pas votre solution... Je compares 2 chaines qui sont en faites sous la forme "X.X.X." ou X corresponds à un chiffre... Quand je fais J'obtiens --> int(-1) alors que je compare exactement la même chaîne (par exemple $Ref1 = 1.4.0. et $Ref2 = 1.4.0.)... Même en faisant J'obtiens --> bool(false) Si c'est une histoire d'encodage comment contourner le problème ? Sachant que je récupères mes chaines d'une base de données mysql...
__________________
Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence. |
|
|
00
|
|
|
#19 | ||||
![]() ![]() |
Bonjour,
essaye peut être de vérifier l'encoding de tes chaines : Code :
Code :
Si les encoding sont différent il faut d'abord faire un ré-encoding des chaînes avant la comparaison.
__________________
modérateur webmasters - développements web & php faq jQuery - règles du forum - faqs web mon espace persoVenez participez au deuxième defi Web !
|
||||
|
00
|
|
|
#20 | |
|
Membre éclairé
![]() Développeur Web Inscription : mars 2008 Messages : 426 ![]() |
C'est bien un problème d'encodage :
Citation:
et REF2 est encodé en UTF-8 C'est possible ? Comment je dois faire pour ré-encoder ?
__________________
Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence. |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com