2010-07-14 4 views
9

sto sviluppando un sito web utilizzando PHP e questi strani caratteri "ï »¿" appare nella mia pagina, proprio sulla parte superiore di esso. Il mio codice è questo:ï »¿il circuito di codifica problema

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><?php echo '';?> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 

Ma quando vedo il codice sorgente nel browser, mostra questo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 

Non so se ha alcuna relazione con la codifica Sono utilizzando, perché quando cambio il set di caratteri su charset=utf-8 scompare ma devo usare iso-8859-1

+0

Perché utilizzare 'iso-8859-1'? – SLaks

+0

Non so se devo. Ho iniziato a usarlo perché alcuni caratteri come "á", "é" appaiono come . È un sito Web in portoghese (PT-Br) – rlc

+3

Se non si ha una buona ragione per utilizzare ISO-8859-1, non farlo. Risparmia un sacco di mal di testa e usa UTF-8 per tutto. Unicode (UTF-8) può codificare praticamente qualsiasi personaggio possibile su questo pianeta, tutte le altre codifiche possono solo codificare un sottoinsieme limitato, quindi è necessario assicurarsi che non si stiano mai utilizzando caratteri al di fuori di quel sottoinsieme. Avresti bisogno di un buon motivo per limitarti in quel modo. – deceze

risposta

18

Questo è un BOM character, che è lì perché i file di codice sorgente vengono salvati come UTF-8 BOM. Prova a salvarli come non-BOM UTF-8 (o come lo chiama il tuo editor) o ISO-8859-1 se devi usarlo (... perché lo faresti?).

+0

Come posso fare? – rlc

+1

Dipende dall'editor che stai utilizzando. Quindi ... quale editor stai usando? – clee

+0

Eclipse per PHP – rlc

0

Guarda la schermata "Info sulla pagina" e guarda quale set di caratteri il browser pensa di essere. Le probabilità sono che il tuo server web sta forzando UTF-8 con la sua intestazione Content-Type, che trionfa il tag meta.

+0

Mozilla Firefox dice che sta usando iso-8859-1 – rlc

3

Se si desidera utilizzare iso-8859-1, è necessario salvare il file PHP come iso-8859-1.
Per istruzioni dettagliate, indicaci quale editor stai utilizzando.

Tuttavia, mi raccomando di usare UTF8 invece.

+0

Ho già configurato Eclipse per quello, e appare ancora. – rlc

-1

soluzione semplice, appena messo il codice/php html è iniziare dalla prima linea, sto solo farlo per risolvere questi problemi, ed è il lavoro.

+0

Non pensi che OP _did_ collochi il codice giusto?Perché non hai controllato la risposta che era _accepted_ (come - ovviamente - ha descritto il problema e la sua possibile soluzione abbastanza correttamente)? – raina77ow