Quindi ho sempre lavorato correttamente? Ovvero ho sempre tenuto sul DB le stringhe esattamente come vengono inserite, per es. in un modulo di iscrizione o qual si voglia altra funzione, se arrivasse un utente russo piuttosto che cinese, lascio la possibilità di scrivere il suo nome correttamente e lo salvo di conseguenza tale e quale senza nessuna entità, che nel caso del cinese non credo esista un entità per ogni idiogrammaOriginariamente inviato da daniele_dll
Ma in realtà conviene tenere il tutto in UTF-8 perché con estrema semplicità puoi rappresentare vari tipi di caratteri (ad esempio i caratteri speciali di microsoft office word, ergo gli apici singoli/doppi, i maggiori/minoti e cosi via)
Il problema è che in PHP è un pò un dramma gestire le stringhe in formato UTF-8 perché le sue funzioni non supportano correttamente le codifiche. Diciamo che il concetto di carattere è stato parzialmente introdotto da poco e con php 6 (anche se io ho i miei dubbi) sarà supportato a pieno.
Il concetto di carattere e di byte, lo supportano quasi tutti i linguaggi, solo che php lo supporta a metà e quindi si rischia di fare una strage :\![]()
Vorrei approfondire il problema della gestione delle stringhe, dove si potrebbero incontrare problemi? Intendi funzioni tipo "substr"?