PHP Compter les caractères et accents

WRInaute occasionnel
Bonsoir,

Je souhaite compter le nombre de caractères d'une chaine.
Le problème est qu'avec strlen, si ma chaine est "c@3s$szédeee", le nombre retourné est 20 alors que je voudrais récupérer 12 caractères... Je n'ai pas résolu mon problème en utilisant mb_strlen, peut-être que je n'avais pas mis le bon encodage ?
Connaissez-vous une fonction comptant pour un caractère ceux étant sur plusieurs octets ?

Merci d'avance, Guillaume.
 
WRInaute occasionnel
Merci de ta réponse, je pense que c'est ce que je ferai en dernier recours... Il doit bien y avoir une solution ! :roll:
 
WRInaute passionné
gcvoiron a dit:
Mes pages sont en iso-8859-1...

Dans ta réponse je sens que t'entrevois le fond du problème...

Tu précises : "mes pages", ce que je comprends, c'est qu'il s'agit des déclarations dans le head de tes fichiers html...

Mais d'où sortent ces chaînes avec accents, d'une base de donnée ? elle aussi en iso ?...
 
WRInaute occasionnel
phpmikedu83 a dit:
gcvoiron a dit:
Mes pages sont en iso-8859-1...

Dans ta réponse je sens que t'entrevois le fond du problème...

Tu précises : "mes pages", ce que je comprends, c'est qu'il s'agit des déclarations dans le head de tes fichiers html...

Mais d'où sortent ces chaînes avec accents, d'une base de donnée ? elle aussi en iso ?...
Ces chaines de caractères viennent d'un formulaire. C'est pour vérifier que le mot de passe est comprit en X et Y caractères.
 
WRInaute passionné
gcvoiron a dit:
Ces chaines de caractères viennent d'un formulaire. C'est pour vérifier que le mot de passe est comprit en X et Y caractères.

T'as dû rater quelque chose quelque part car ton problème sens fortement l'encodage caractère hétérogène ;-)
Y'a pas que de l'iso à mon avis...
 
WRInaute occasionnel
phpmikedu83 a dit:
gcvoiron a dit:
Ces chaines de caractères viennent d'un formulaire. C'est pour vérifier que le mot de passe est comprit en X et Y caractères.

T'as dû rater quelque chose quelque part car ton problème sens fortement l'encodage caractère hétérogène ;-)
Y'a pas que de l'iso à mon avis...
Effectivement, j'avais bien une erreur... Je suis passé de Gedit à Quanta++ et il enregistrait mes pages en UTF...
Merci à tous pour l'aide !

:wink:
 
WRInaute accro
c'est un + l'utilisation du métacaractère world \w si l'on veut compter les caractères unique d'une chaine en UTF8.. et c'est pas expliquer dans la doc officielle php.
 
WRInaute accro
En dessous, dans les exemples, c'est de ça que je parle, ça fait parti de la doc non ? :) Si on lisait que ce qui était officiel, la doc serait beaucoup moins riche !
 
WRInaute passionné
YoyoS a dit:
En dessous, dans les exemples, c'est de ça que je parle, ça fait parti de la doc non ? :) Si on lisait que ce qui était officiel, la doc serait beaucoup moins riche !

Surtout que tous ceux qui pompent bêtement le contenu à l'identique ne prennent pas la peine d'essayer de l'étoffer un peu...
 
WRInaute accro
YoyoS a dit:
En dessous, dans les exemples, c'est de ça que je parle, ça fait parti de la doc non ? :)

non, ils ne font que suivrent les mormes php d'encodages.

YoyoS a dit:
Si on lisait que ce qui était officiel, la doc serait beaucoup moins riche !

Je suis d'accord. La doc c'est le bottin des phpnautes... avec tous ses liens. Ca fait du bien des articles de qualité qui traitent du même sujet en profondeur.
 
Discussions similaires
Haut