OVH Cloud OVH Cloud

De l'utilisation de mbstring

2 réponses
Avatar
Salagir
Bonjour à tous.
Je voudrai passer un site multilangue que j'ai commencé en UTF-8.
J'ai regardé la doc de mbstring qui me semble très bien mais il me reste
pas mal de question, si vous avez déjà touché à tout cela, vous aurez
peut-être un peu plus l'habitude :

* J'ai d'autres sites sur la même machine, et ces autres je ne veux pas
les passer en mbstring... je peux changer les valeurs définies dans
php.ini avec un htaccess (ou la conf apache du directory, enfin on s'en
fout), mais si je mets mbstring dans php, il sera partout, et ne
risque-t-il pas de mettre la merde sur les autres sites, voire
simplement de... ralentir pour rien ?
Et en passant, le manuel parle d'options de configuration pour utiliser
mbstring. Celà doit-il dire que je dois recompiler php, ou le
re-apt-geter (oui parce que bon, compiler...) ?

* Lorsque mbstring est mis en place et configuré pour le in, le out etc.
en utf8, est ce que apache comprends et envoie, dans les headers de la
page web que c'est de l'utf-8 (alors qu'habituelement il envoie
iso-8859-1) ? Parce que c'est évidement indispensable.
Sinon, comment le changer ?
(j'ai essayé AddType "text/html; charset=uft-8" php j'ai eu une
belle surprise ahahaha)

Merci pour vote aide :)

--
My Webcomic: www.geeksworld.org -+- All my websites: manaworld.free.fr
<studmuffn> one day i will find a way to implant annoying songs
in other peoples heads
<studmuffn> it will be my supervillian power

2 réponses

Avatar
Olivier Miakinen

Je voudrai passer un site multilangue que j'ai commencé en UTF-8.
J'ai regardé la doc de mbstring qui me semble très bien mais il me reste
pas mal de question, si vous avez déjà touché à tout cela, vous aurez
peut-être un peu plus l'habitude :


Je n'ai jamais utilisé mbstring, je ne peux donc pas répondre à ta
première question. En revanche, je sais répondre à la deuxième :

* Lorsque mbstring est mis en place et configuré pour le in, le out etc.
en utf8, est ce que apache comprends et envoie, dans les headers de la
page web que c'est de l'utf-8


Apache s'en contrefiche, ce sont les navigateurs qui en ont besoin.
Pour une page dynamique telle qu'un programme PHP, c'est le programme
qui doit indiquer quel jeu de caractères il utilise.

header("Content-Type: text/html; charset=UTF-8");

(alors qu'habituelement il envoie iso-8859-1) ?


Hum... ça, cela m'étonnerait. Si tu as des pages PHP qui envoient de
l'ISO-8859-1, tu devrais le signaler aussi :

header("Content-Type: text/html; charset=ISO-8859-1");

(peut-être que je me trompe, mais j'attends encore d'en avoir la preuve)

(j'ai essayé AddType "text/html; charset=uft-8" php j'ai eu une
^^^utf

belle surprise ahahaha)


Ça c'est pour les fichiers statiques. Je suppose qu'il t'a affiché le
code source du programme PHP au lieu de l'exécuter ?

--
Olivier Miakinen
Troll du plus sage chez les conviviaux : le nouveau venu, avec
son clan, s'infiltre dans les groupes de nouvelles. (3 c.)

Avatar
Salagir
On 30 Nov 2005 14:56:47 GMT, in fr.comp.lang.php,
Olivier Miakinen wrote:
Apache s'en contrefiche, ce sont les navigateurs qui en ont besoin.
Pour une page dynamique telle qu'un programme PHP, c'est le programme
qui doit indiquer quel jeu de caractères il utilise.
header("Content-Type: text/html; charset=UTF-8");


Certes, mais il faut alors l'ajouter dans toutes les pages.

(alors qu'habituelement il envoie iso-8859-1) ?
Hum... ça, cela m'étonnerait. Si tu as des pages PHP qui envoient de

l'ISO-8859-1, tu devrais le signaler aussi :
header("Content-Type: text/html; charset=ISO-8859-1");


Apache donne quand même un header par défaut (enfin, cela dépends de la
coniguration).

(j'ai essayé AddType "text/html; charset=uft-8" php j'ai eu une
^^^utf

belle surprise ahahaha)
Ça c'est pour les fichiers statiques. Je suppose qu'il t'a affiché le

code source du programme PHP au lieu de l'exécuter ?


Oui :)

La solution fut:

AddDefaultCharset UTF-8

--
My Webcomic: www.geeksworld.org -+- All my websites: manaworld.free.fr
Talon: Mais... cette fleur a trépassé !
Lefuneste: Eh! Oui. Que met-on sur la tombe d'un fleur ?
-+- Achille Talon et l'arme du crocodile -+-