PHP Compter les caractères et accents
18 messages
• Page 1 sur 2 • 1, 2
- gcvoiron
- WRInaute occasionnel

- Messages: 494
- Inscription: 19 Oct 2005
PHP Compter les caractères et accents
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.
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.
-

phpmikedu83 - WRInaute passionné

- Messages: 1281
- Inscription: 6 Aoû 2005
gcvoiron a écrit:Merci de ta réponse, je pense que c'est ce que je ferai en dernier recours... Il doit bien y avoir une solution !
Qu'utilises tu comme charset, c'est important de le savoir...
-

YoyoS - WRInaute accro

- Messages: 3835
- Inscription: 14 Sep 2006
Tu trouveras ton bonheur sur la doc: http://www.php.net/manual/fr/function.strlen.php
Faut toujours penser à y jeter un oeil avant de poser une question, une vraie mine d'or !
Faut toujours penser à y jeter un oeil avant de poser une question, une vraie mine d'or !
-

phpmikedu83 - WRInaute passionné

- Messages: 1281
- Inscription: 6 Aoû 2005
gcvoiron a écrit: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 ?...
- gcvoiron
- WRInaute occasionnel

- Messages: 494
- Inscription: 19 Oct 2005
YoyoS a écrit:Tu trouveras ton bonheur sur la doc: http://www.php.net/manual/fr/function.strlen.php
Faut toujours penser à y jeter un oeil avant de poser une question, une vraie mine d'or !
J'ai lu et relu la doc... Mais rien trouvé concernant les caractères multi-octets.
- gcvoiron
- WRInaute occasionnel

- Messages: 494
- Inscription: 19 Oct 2005
phpmikedu83 a écrit:gcvoiron a écrit: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.
-

phpmikedu83 - WRInaute passionné

- Messages: 1281
- Inscription: 6 Aoû 2005
gcvoiron a écrit: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...
- gcvoiron
- WRInaute occasionnel

- Messages: 494
- Inscription: 19 Oct 2005
phpmikedu83 a écrit:gcvoiron a écrit: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 !
- jarreweb
- WRInaute discret

- Messages: 192
- Inscription: 12 Sep 2003
éventuellement un strlen sur un utf8_decode
- Code: Tout sélectionner
strlen(utf8_decode($ma_chaine))
-

KOogar - WRInaute accro

- Messages: 3974
- Inscription: 16 Nov 2004
Re: PHP Compter les caractères et accents
gcvoiron a écrit:Connaissez-vous une fonction comptant pour un caractère ceux étant sur plusieurs octets ?
Merci d'avance, Guillaume.
http://www.phpwact.org/php/i18n/charsets
- Code: Tout sélectionner
//Checking a Strings Length:
if ( !preg_match('/^\w{,10}$/u', $firstname) ) {
die($firstname . ' is too long');
}
18 messages
• Page 1 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- Compter le nombre de caractères d'une chaine
- Compter le nombre de mots dans une chaine de caractères
- Caractères spéciaux / accents dans URL Wordpress
- Questions sur les accents et caractères nationnaux
- Accents et caractéres spéciaux dans URL et referencement ?
- Influence des accents: encodage natif ou caractères spéciaux
- [PHP] : compter le nombre de requêtes MySQL
- AIDE PHP COMPTER LE NOMBRE D'ARTICLES
- Dans les URL, évitez les accents, caractères spéciaux et majuscules
- [PHP/MySQL] Compter le nombre de checkbox cochées
- Google compter lever entre 2 et 3 milliards de dollars - 26-07-2004
- Conseils d'optimisation de la balise TITLE (titre d'une page HTML) - 04-08-2008
- WebRankInfo lance un forum rédaction et référencement - 17-04-2009
- Google Suggest - 10-12-2004
- Déclarer son fichier sitemap dans le fichier robots.txt - 16-04-2007
- Customize Google (extension Firefox) - 21-06-2006
- Google affiche des liens vers des plans de villes - 25-09-2004
- L'indice de densité idéal pour le référencement - 14-09-2009
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités
