Al tener un archivo guardado en la norma ISO-8859-1 y usando el comandoQué charset teniendo en cuenta las funciones cambiado de PHP5.2 a PHP5.4
echo "test: ".htmlspecialchars("äöü");
El regreso será única "prueba".
Esto se debe a que el juego de caracteres estándar para htmlspecialchars cambió a UTF-8 en PHP5.4. Es necesario establecer explícitamente el conjunto de caracteres:
echo "test: ".htmlspecialchars("äöü", ENT_COMPAT | ENT_HTML401, 'ISO-8859-1');
¿Hay otras funciones en PHP5.4, que no funciona correctamente más, si no se establece el conjunto de caracteres?
Quiero añadir algo: PHP 5.4 se supone que debe ser "PHP 6.0", que se supone que debe ser completa UTF 8, por lo que en un futuro cercano, todas las funciones estarán configuradas por defecto en UTF-8. –
@David Bélanger: Esto es muy impreciso. Nunca hubo PHP 6.0 y PHP 5.4 nunca se suponía que fuera PHP 6.0. También PHP 6.0 - si alguna vez - se supuso que era UTF-16, no UTF-8. – hakre
@hakre False. Ver http://smartwebdeveloper.com/php/php-6-features-release-date-hosting-download –