mysql_set_charset()
skulle vara ett alternativ - men ett alternativ begränsat till ext/mysql
. För ext/mysqli
det är mysqli_set_charset
och för PDO
::mysql
du måste ange en anslutningsparameter.
Eftersom användningen av denna funktion resulterar i ett MySQL API-anrop bör det anses vara mycket snabbare än att skicka en fråga.
När det gäller prestanda är det snabbaste sättet att säkerställa en UTF-8-baserad kommunikation mellan ditt skript och MySQL-servern att ställa in MySQL-servern korrekt. Som SET NAMES x
är likvärdig
till
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;
medan SET character_set_connection =x
internt kör också SET collation_connection =<
du kan också ställa in dessa servervariabler
statiskt i din my.ini/cnf
.
Var medveten om möjliga problem med andra applikationer som körs på samma MySQL-serverinstans och som kräver någon annan teckenuppsättning.