Prima di proseguire...
Potrebbe interessarti la nostra collezione di esercizi C risolti?
A chi non è capitato di avere problemi con i caratteri unicode in php, anche mettendo il metatag apposito? Ed è quindi stato “costretto” ad usare i caratteri speciali dell’html (es : è = è).
Bene oggi vediamo come fare:
Per prima cosa analiziamo l’header di una risposta http(esempio preso da wikipedia) di un server :
HTTP/1.0 200 OK Date: Mon, 28 Jun 2004 10:47:31 GMT Server: Apache/1.3.29 (Unix) PHP/4.3.4 X-Powered-By: PHP/4.3.4 Vary: Accept-Encoding,Cookie Cache-Control: private, s-maxage=0, max-age=0, must-revalidate Content-Language: it Content-Type: text/html; charset=utf-8 Age: 7673 X-Cache: HIT from wikipedia.org Connection: close
Analizziamo la riga contente il “Content-Type”(“Content-Type: text/html; charset=utf-8”), questa riga contiene il tipo di codifica utilizzata dal web server, che in molti casi è l’occidentale (“iso-8859-1”).
Quindi per impostare l’unicode(“utf-8”) ci basta impostare il giusto header, per far ciò da php basta fare:
header(“Content-Type: text/html; charset=utf-8”);
prima dell’inizio dell’invio dle flusso di dati.
Il mio consiglio però è quello di mettere anche il metatag apposito, nell’head dell’html :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
problemi supporto caratteri unicode php by cardinale claudio is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.