Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 25/11/2010, 21h00   #1
Membre du Club
 
Inscription : mars 2007
Messages : 116
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 116
Points : 52
Points : 52
Par défaut accéder à un caractère en utf-8

Salut à vous,
j'ai pas mal lu sur php et l'utf8, mais pas trouvé de réponse pour l'accès à un caractère avec:
si je le fais sur un caractère accentué, ça me donne le point d'interrogation de l'iso interprété en utf-8...
j'ai vu ça entre autre pour ce qui est des fonctions (strlen() =>mb_strlen() etc..), et je m'y retrouve à peu près (même si la config par .htaccess ne semble pas fonctionner)...
Donc impossible d'utiliser le code (de base) ci-dessus en utf-8?
BlindeKinder est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2010, 21h36   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 101
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 101
Points : 8 464
Points : 8 464
ouu pas possible comme ca, par contre c'est [] et plus {}
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2010, 21h51   #3
Membre du Club
 
Inscription : mars 2007
Messages : 116
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 116
Points : 52
Points : 52
'plus'? Il faudra vraiment que je pense à changer mon daspet 2004...
mais cette fois, si je fais un
Code :
1
2
3
 
$test = 'testés' ;
echo $test[4] ;
je n'ai rien du tout... puis le '?' avec 5 et 's' avec 6
BlindeKinder est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/11/2010, 22h07   #4
Modérateur
 
Inscription : septembre 2010
Messages : 7 101
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 101
Points : 8 464
Points : 8 464
Citation:
Envoyé par BlindeKinder Voir le message
'plus'? Il faudra vraiment que je pense à changer mon daspet 2004...
mais cette fois, si je fais un
Code :
1
2
3
 
$test = 'testés' ;
echo $test[4] ;
je n'ai rien du tout... puis le '?' avec 5 et 's' avec 6
plus : plu

c'est la même choses c'est juste que les crochet c'est l'écriture déprécié,
sinon pour ce que tu veux faire regarde du coté de mb_substr ou grapheme_extract
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2010, 13h10   #5
Membre du Club
 
Inscription : mars 2007
Messages : 116
Détails du profil
Informations forums :
Inscription : mars 2007
Messages : 116
Points : 52
Points : 52
oui, je pensais que j'aurais à me diriger du côté de mb_, mais c'est quand même pénible que la syntaxe de base ne fonctionne pas quand on utilise un encodage 'dans l'ère du temps...'. enfin, vivement php6, qui semblerait basé nativement sur utf8.
BlindeKinder est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 27/11/2010, 13h16   #6
Expert Confirmé
 
Avatar de Séb.
 
Inscription : mars 2005
Messages : 2 815
Détails du profil
Informations personnelles :
Âge : 34
Localisation : France

Informations professionnelles :
Secteur : High Tech - Opérateur de télécommunications

Informations forums :
Inscription : mars 2005
Messages : 2 815
Points : 3 440
Points : 3 440
PHP6 est mort avant de naître : http://www.google.fr/search?q=php6
Va falloir être patient...
__________________
Un problème exposé clairement est déjà à moitié résolu
Keep It Smart and Simple
Séb. est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/11/2010, 18h40   #7
Rédacteur/Modérateur
 
Avatar de Thes32
 
Homme
Développeur Web
Inscription : décembre 2006
Messages : 2 335
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : décembre 2006
Messages : 2 335
Points : 3 774
Points : 3 774
Citation:
Envoyé par BlindeKinder
...mais c'est quand même pénible que la syntaxe de base ne fonctionne pas quand on utilise un encodage 'dans l'ère du temps...'.
Oui, en effet ce n'est pas très pratique !

Néanmoins tu peux aussi passer par iconv_substr

Code :
1
2
3
 
$test = 'testés';
echo iconv_substr( $test, 4, 1, 'UTF-8' );
Comme il n'est pas possible de surcharger un type prédéfinie comme en c++, tu peux créer une classe String qui hériterais de ArrayObject et où tu surchargerais la méthode offsetGet par un appel à iconv_substr... Juste pour avoir quelque chose de propre^^

A+
__________________
Développeur | Zend Certified Engineer

Étapes Pour mieux se servir du forum:
1. Commencez par lire les cours et tutoriels ;
2. Faites une recherche;
3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles;

Nix>_Rien n'est plus pratique que la théorie
Thes32 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h51.


 
 
 
 
Partenaires

Hébergement Web