 |
Il carattere sostitutivo UTF-8
per le codifiche errate |
Ora che abbiamo conosciuto UTF-8, e visto come agisce tanto all'interno di semplici pagine HTML quanto all'interno di script PHP (quindi in un scambio dati tra Browser, Web Server, motore PHP), non resta che vedere come si comporta nello scambio dati tra PHP e MySQL.
Iniziamo con il chiarire alcuni concetti relativi a MySQL. Il DB utilizza per la memorizzazione dei testi un charset (il nostro UTF-8 ad esempio) atto ad individuare la codifica del testo, ed una collation (
collazione in italiano) con cui si definiscono una serie di regole per il confronto dei caratteri nell'ambito del charset. Ciò al fine di stabilire quale carattere precede un'altro nelle operazioni di ordinamento e ricerca con operatori di confronto. Ciò significa anche che il charset e la collazione sono legati fra di loro ossia stabilito il charset da utilizzare, si sceglie la collazione più idonea al proprio fra quelle disponibili per il charset scelto. Ad esempio MySQL mette a disposizione per UTF-8
diverse collazioni.