@deceze och @Shakti tack för din hjälp.
+1 för artikellänken postad av deceze (Hantera Unicode framifrån och bak i en webbapp ) och det är också värt att läsa Förstå kodning
Efter att ha läst dina kommentarer, svar och naturligtvis de två artiklarna löste jag äntligen mitt problem.
Jag har listat de steg jag gjort hittills för att lösa det här problemet:
- Lade till
header('Content-Type: text/html; charset=utf-8');
överst i min init.php-fil, - Ändrade CHARACTER SET i mitt databastabellfält som lagrar dessa värden till UTF-8,
- Ställ in MySQL-anslutningsteckenuppsättning till UTF-8
mysql_set_charset('utf8', $connection_link_id);
- Använde htmlentities()-funktionen för att konvertera tecken
$meta_title = htmlentities(trim($meta_title_raw), ENT_QUOTES, 'UTF-8');
Nu verkar problemet vara löst, MEN jag måste fortfarande göra följande för att lösa det här problemet till fullo.
- Hämta den kodade teckenuppsättningen från källan
$source_charset
. - Ändra kodningen för strängen till UTF-8 om den inte redan är i samma kodning. För detta är den enda tillgängliga PHP-funktionen
iconv()
. Exempel:iconv($source_charset, "UTF-8", $meta_title_raw);
För att få $source_charset
Jag måste nog använda några knep eller multikontroll. Som att kolla rubriker och metataggar etc. Jag hittade ett bra svar på Detektera kodning
Låt mig veta om det finns några förbättringar eller något fel på mina steg ovan.