htmlentities() et strtoupper() ne font pas bon ménage

Mammouth du PHP | 2937 Messages

03 juin 2006, 17:27

Salut à tous!

Autre souci du moment lié à mon site perso: les fonctions htmlentities() et strtoupper() font-ils bon ménage quand elles sont utilisées conjointement?

Quand je code ceci:
$titre='écran';
$titre=htmlentities(strtoupper($titre));
echo $titre;
,

en local ça affiche bien "ÉCRAN", mais pas en ligne (où j'ai "éCRAN"). :shock: :(

Eléphant du PHP | 413 Messages

05 juin 2006, 17:02

salut,

je ne pense pas que htmlentities gêne. c'est probablement strtoupper :

sur http://php.net/strtoupper :

"" Notez que la notion d'"alphabétique" est déterminée par la configuration de localisation. Cela signifie que pour la configuration par défaut "C", les caractères tels que les voyelles accentuées (comme é, è ou à) ne seront pas converties. ""

tu dois avoir des paramètres de localisation différents en locale ou en ligne.
--
Goeb

Mammouth du PHP | 2937 Messages

05 juin 2006, 17:30

Salut et merci pour la réponse! :D

Pour ma part, j'ai résolu le problème en supprimant la fonction strtoupper() et ajoutant cette règle CSS:

Code : Tout sélectionner

text-transform: uppercase;
et là, ça marche. :wink: