2011-07-02 3 views
1

Une question simple et stupide qui me demande.Support Encode natif

J'ai vu dans le PHP Manul que PHP ne supporte qu'un ensemble de 256 caractères. Mais n'est pas spécifié si est le code ASCII.

Du manuel de PHP j'ai trouvé This page Qui me confondez plus.

Je veux savoir si dépend du système d'exploitation.

Le support natif de PHP est le code ASCII? Un document qui le stipule?

Qu'en est-il des This Supports d'encodage?

Répondre

1

PHP utilise des caractères ASCI chacun d'un octet contenant 8 bits. C'est tout.

PHP ne se soucie pas de l'interprétation de chaque octet, il lit juste à partir d'une source ou écrit dans un puits.

Pour ces code-page spécifiques, ces octets n'appartiennent pas. PHP s'en fout.

Si votre script PHP interagit avec un serveur Web, chaque page doit contenir une indication, qui définit le interpreation correct dans le <head> d'une page <html>:

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/> 

La déclaration ci-dessus définit que la les caractères de la page HTML doivent être interprétés comme ISO Latin-1. De plus, si la page renvoie des caractères au script PHP, le navigateur les envoie sous la forme ISO Latin-1 caractères ASCII codés.

Si vous oubliez de définir un Type de contenu, le navigateur doit utiliser un encodage de page/texte de code. Cela dit, vous pouvez utiliser n'importe quel encodage de texte ASCII qui correspond le mieux à vos besoins. Mais n'oubliez jamais de définir un Content-Type dans une page Web.

Extensions comme iconv aide, dans le cas où vous avez besoin de traiter par ex. Caractères UTF-8.