Cómo configurar el encabezado HTTP en UTF-8 usando PHP que es válido en el validador W3C
Tengo varias páginas PHP que reflejan varias cosas en páginas HTML con el siguiente código.
<meta http-equiv="Content-type" content="text/html; charset=utf-8" />
Sin embargo, cuando valido usando el validador W3C aparece:
La codificación de caracteres especificada en el encabezado HTTP (iso-8859-1) es diferente del valor del elemento (utf-8).
Soy bastante nuevo en PHP y me preguntaba si podría y debería cambiar el encabezado de los archivos PHP para que coincida con los archivos HTML.
Úselo header
para modificar el encabezado HTTP:
header('Content-Type: text/html; charset=utf-8');
Tenga en cuenta que debe llamar a esta función antes de enviar cualquier resultado al cliente. De lo contrario, el encabezado también se envió y obviamente ya no puedes cambiarlo. Puedes comprobarlo con headers_sent
. Consulte la página del manual deheader
para obtener más información.
Primero asegúrese de que los archivos PHP estén codificados en UTF-8 .
Algunos navegadores ignoran la metaetiqueta. Si sólo utiliza caracteres ASCII, no importa de todos modos.
http://en.wikipedia.org/wiki/List_of_HTTP_header_fields
header('Content-Type: text/html; charset=utf-8');