Pregunta

Esto me está volviendo loca.

Tengo este archivo php en un servidor de prueba en el trabajo que no funciona.Seguí borrando cosas hasta que se convirtió en

<?
print 'Hello';
?>

sale

Hola

Si creo un archivo nuevo y copio/pego el mismo script, ¡funciona!¿Por qué este archivo me da caracteres extraños todo el tiempo?

¿Fue útil?

Solución

Eso es BOM (marca de orden de bytes) estás viendo.

En su editor, debería haber una manera de forzar el guardado sin BOM, lo que eliminará el problema.

Otros consejos

Lo encontré, archivo -> codificación -> UTF8 con BOM, cambiado a UTF :-)

Debería haberlo preguntado antes de perder el tiempo intentando resolverlo :-)

Por si acaso, aquí hay una lista de bytes para BOM

Encoding    Representation (hexadecimal)
UTF-8   EF BB BF
UTF-16 (BE) FE FF
UTF-16 (LE) FF FE
UTF-32 (BE) 00 00 FE FF
UTF-32 (LE) FF FE 00 00
UTF-7   2B 2F 76, and one of the following bytes: [ 38 | 39 | 2B | 2F ]†
UTF-1   F7 64 4C
UTF-EBCDIC  DD 73 66 73
SCSU    0E FE FF
BOCU-1  FB EE 28 optionally followed by FF†
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top