Apache
Kódování serveru musí být buď nenastaveno, nebo musí být nastaveno na UTF-8. To se provádí pomocí direktivy AddDefaultCharset apache. To může přejít na virtualhost nebo obecný soubor (viz dokumentace).
AddDefaultCharset utf-8
MySql
- Nastavte řazení databáze na UTF-8
- Nastavte kódování připojení. Lze to provést, jak někdo řekl pomocí mysqli_set_charset, nebo odesláním tohoto ihned po připojení:
SET NAMES 'utf8' COLLATE 'utf8_unicode_ci'
PHP
1- Znakovou sadu HTML stránky byste měli nastavit na UTF-8, prostřednictvím metaznačky na stránce nebo pomocí hlavičky PHP:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> -or- header('Content-type: text/html; charset=utf-8');
2- K získání délky řetězce byste měli vždy používat verzi mb* funkcí souvisejících s řetězci, například mbstrlen místo strlen.
To by vám mělo umožnit mít UTF-8 všude, od stránek až po data. Test, který můžete udělat:klikněte pravým tlačítkem kamkoli na stránku pomocí firefoxu a vyberte Zobrazit informace o stránce. Efektivní kódování je uvedeno na této stránce.