Sfondo rapida: Ho ereditato un grande file di dump SQL che contiene una combinazione di testo inglese e arabo e (credo) è stato originariamente esportato usando 'latin1'. Ho cambiato tutte le occorrenze di 'latin1' in 'utf8' prima di importare il file. Il testo arabo non viene visualizzato correttamente in phpMyAdmin (che credo sia normale), ma quando ho caricato il testo a una pagina Web con il seguente ...arabo codifica dei caratteri Problema: UTF-8 contro Windows-1256
<meta http-equiv='Content-Type' content='text/html; charset=windows-1256'/>
... tutto sembrava buono e il testo arabo visualizzato perfettamente.
Problema: Il mio cliente è davvero molto esigente e non vuole cambiare la sua ...
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
... all'equivalente 'Windows-1256'. Non pensavo che questo sarebbe stato un problema, ma quando ho cambiato il valore del set di caratteri in "UTF-8", tutti i caratteri arabi apparivano come diamanti con punti interrogativi. UTF-8 non dovrebbe visualizzare correttamente il testo arabo?
Ecco alcune note sulla mia configurazione del database:
- charset Database 'utf8'
- Database connessione collazione è 'utf8_general_ci'
- tutti i database, tabelle e campi applicabili hanno stato collazionato come 'utf8_general_ci'
Sto setacciando stack overflow e altri forum per tutto ciò che riguarda al mio problema Ho riscontrato problemi simili, ma non sembra che le soluzioni funzionino per la mia situazione specifica. Spero che qualcuno possa aiutarti!
Hai salvato utilizzando il Blocco note? Se questo è il caso, assicurati di aver scelto UTF-8 come codifica anziché ANSI, altrimenti potresti perdere i tuoi caratteri arabi. – SiN