Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Best Practices in PHP und MySQL mit internationalen Zeichenfolgen

Auf den ersten Blick auf http://www.nicknettleton.com/ zine/php/php-utf-8-cheatsheet Ich denke, dass eine wichtige Sache fehlt (vielleicht habe ich diese übersehen). Abhängig von Ihrer MySQL-Installation und/oder -Konfiguration müssen Sie die Verbindungscodierung so einstellen, dass MySQL weiß, welche Codierung Sie auf der Client-Seite (d. h. dem Client) erwarten Seite der MySQL-Verbindung, die Ihr PHP-Skript sein sollte). Sie können dies tun, indem Sie manuell ein

ausgeben
SET NAMES utf8

Abfrage vor jeder anderen Abfrage, die Sie an den MySQL-Server senden.

Wenn Sie PDO auf der PHP-Seite verwenden, können Sie die Verbindung so einrichten, dass diese Abfrage bei jeder (Wieder-)Verbindung automatisch ausgegeben wird, indem Sie

verwenden
$db=new PDO($dsn, $user, $pass);
$db->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES utf8");

beim Initialisieren Ihrer DB-Verbindung.