Jag upplevde samma problem tidigare, och det jag gjorde är följande
1) Använd notepad++(kan nästan anpassas till vilken kodning som helst) eller eclipse och se till att spara eller öppna den i UTF-8 utan BOM .
2) ställ in kodningen i PHP-huvudet med header('Content-type: text/html; charset=UTF-8');
3) ta bort eventuella extra mellanslag i början och slutet av mina PHP-filer.
4) ställ in all min tabell- och kolumnkodning till utf8mb4_general_ci
eller utf8mb4_unicode_ci
via PhpMyAdmin eller någon mySQL-klient du har. En jämförelse av de två kodningarna finns tillgängliga här
5) ställ in mysql anslutningsteckenuppsättning till UTF-8 (jag använder PDO för min databasanslutning)
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"
PDO::MYSQL_ATTR_INIT_COMMAND => "SET CHARACTER SET utf8"
eller kör bara SQL-frågorna innan du hämtar data
6) använd en metatagg <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
7) använd en viss språkkod för franska<meta http-equiv="Content-language" content="fr" />
8) ändra html-elementets lang-attribut till önskat språk
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
och kommer att uppdatera detta mer eftersom jag verkligen hade svårt att lösa det här problemet tidigare eftersom jag hade att göra med japanska karaktärer i mina tidigare projekt
9) Vissa teckensnitt är inte tillgängliga i klientdatorn, du måste använda Google-teckensnitt för att inkludera den i din CSS
10) Avsluta inte din PHP-källfil med ?>
OBS:
men om allt jag sa ovan inte fungerar, försök att justera din kodning beroende på vilken teckenuppsättning du verkligen vill visa, för mig ställer jag in allt till SHIFT-JIS
att visa alla mina japanska karaktärer och det fungerar verkligen bra. Men med UFT-8
måste vara din prioritet