Før Unicode-standarden , ved hjelp av spesielle tegn eller bokstaver fra fremmedspråk ment å bytte mellom flere forskjellige tegnsett . Det praktiske, men er til liten nytte for deg hvis PHP-skript vil ikke vise korrekt tekst som er formatert med Unicode eller MySQL database vil ikke akseptere Unicode-tekst . Endre formatering konfigurasjoner vil løse disse problemene . Problemets natur
Unicode system av tegnkoding er ikke komplisert: en skråstrek og en " u" foran en kombinasjon av bokstaver og tall som svarer til en bestemt karakter. Men hvis PHP script ikke forventer UTF - 8 formatering så PHP vil vise enten selve Unicode-koding eller en serie av spørsmålstegn. Du kan løse dette problemet ved å sette din PHP script til å bruke UTF - 8 formatering.
Innstilling MySQL Godta UTF - 8
Siden PHP utfører fra HTML- sider , standard formatering vil komme fra en av to kilder: . serverens htaccess eller HTML på websiden selv. Du kan lage HTML- sider på serveren din standard til UTF - 8-koding ved å sette linjen " ForceType 'text /html ; charset = UTF - 8 ' " i sin htaccess fil. . Hvis du bare ønsker å bruke UTF - 8 formatering på en bestemt side , så kan du legge linjen " ; . "mellom åpning og lukking
koder på toppen av HTML-filen
PHP Akseptere Unicode
p Hvis du bare ønsker å bruke Unicode formatering for resultatene fra din mySQL database, men en annen koding format for resten av PHP script , så kan du sette din mySQL Søkeobjektet å bruke UTF - 8 formatering i søkeresultatene. Du kan gjøre dette ved å sende strengen " sett character_set_results = ' utf8 ' " som et argument i din mySQL Søkeobjektet før du henter data fra tabellen .
Non - Unicode MySQL Output
p Hvis du prøver å skrive Unicode - formatert tekst til en mySQL tabell som bruker en annen koding ordningen, så vil du få en feilmelding, og innsatsen operasjonen vil mislykkes. Du kan endre en eksisterende MySQL tabellen formatering ved å kjøre en " alter "-kommandoen med handlingen " charset = utf8 " for databasen , bord og eventuelle nødvendige kolonner. For eksempel syntaksen " ALTER TABLE my- tabellen CHARSET = UTF8L ; " kunne dekke bordet med tittelen " my- tabellen " til UTF - 8 formatering
.