Requerimientos para la codificación de caracteres en PHP
Las codificaciones de los siguientes tipos se pueden utilizar con PHP de forma segura.
Codificaciones de un solo byte,
que tienen mapas de referencia compatibles con ASCII (ISO646) para los
caracteres en el rango de 00h a
7fh.
Codificación multibyte,
que tienen mapas de referencia compatibles con ASCII para los caracteres en el rango de
00h a 7fh.
que no utilizan secuencias de escape ISO2022.
que no utilizan un valor en el rango de 00h a
7fh en cualquiera de los bytes compuestos
que representan un carácter sencillo.
Estos son ejemplos de codificaciones de caracteres que es poco probable que funcionen
con PHP.
Aunque algunos scripts de PHP escritos en estas codificaciones podrían no funcionar,
especialmente en el caso donde los strings codificados aparecen como identificadores
o como literales en el propio script, se puede evitar el uso de estas codificaciones
configurando la función de filtro de codificación transparente de
mbstring para las consultas HTTP entrantes.
Se desaconseja energicamente el uso de SJIS, BIG5, CP936, CP949 y GB18030 para
la codificación interna, a menos que se esté familiarizado con el analizador,
el explorador y la codificación de caracteres.
Si se va a conectar a una base de datos con PHP, se recomienda
utilizar la misma codificación de caracteres para la base de datos y la
codificación interna para un uso más sencillo y un mejor
rendimiento.
Si se utiliza PostgreSQL, la codificación utilizada en la base de datos y la utilizada
en PHP puede ser distinta debido a que se admite la conversión automática del conjunto
de caracteres entre la parte final y la inicial del proceso.