mysql_set_charset()
by byla možnost – ale možnost omezená na ext/mysql
. Pro ext/mysqli
je to mysqli_set_charset
a pro PDO
::mysql
musíte zadat parametr připojení.
Protože použití této funkce vede k volání MySQL API, mělo by být považováno za mnohem rychlejší než zadání dotazu.
Pokud jde o výkon, nejrychlejším způsobem, jak zajistit komunikaci mezi vaším skriptem a serverem MySQL na bázi UTF-8, je správné nastavení serveru MySQL. Jako SET NAMES x
je ekvivalent
do
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;
zatímco SET character_set_connection = x
interně také provede SET collation_connection = <<default_collation_of_character_set_x>>
můžete také nastavit tyto proměnné serveru
staticky ve vašem my.ini/cnf
.
Uvědomte si prosím možné problémy s jinými aplikacemi běžícími na stejné instanci serveru MySQL a vyžadujících jinou znakovou sadu.