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.