Pergunta

Isto está me enlouquecendo.

Eu tenho este arquivo php em um servidor de teste no trabalho que não funciona.Continuei excluindo coisas dele até que se tornou

<?
print 'Hello';
?>

produz

Olá

se eu criar um novo arquivo e copiar/colar o mesmo script nele, ele funcionará!Por que esse arquivo me dá caracteres estranhos o tempo todo?

Foi útil?

Solução

Esse é o BOM (marca de ordem de bytes) você está vendo.

No seu editor, deve haver uma maneira de forçar o salvamento sem BOM, o que eliminará o problema.

Outras dicas

Encontrei, arquivo -> codificação -> UTF8 com BOM, alterado para UTF :-)

Eu deveria ter perguntado antes de perder tempo tentando descobrir :-)

Por precaução, aqui está uma 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 em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top