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

PDO-Äquivalent von mysql_client_encoding()?

Es handelt sich um zwei verschiedene Zeichensätze:

Um den aktuellen Wert dieser Variablen per PDO zu ermitteln, könnten Sie die Ergebnisse der entsprechenden SHOW VARIABLES Aussage; zum Beispiel:

$qry = $db->query("SHOW VARIABLES LIKE 'character_set_client'");

Die Dokumentation für mysql_client_encoding() ist etwas mehrdeutig, da es heißt:

Allerdings existiert keine solche Server-Systemvariable:also bin ich mir nicht sicher, welche sie zurückgeben würde.

Schließlich, anstatt einen MYSQL_ATTR_INIT_COMMAND zu setzen , können Sie Ihren gewünschten Zeichensatz im DSN (wie erwähnt in das Handbuch ):

$db = new PDO("mysql:dbname=$db;host=$host;charset=$charset", $user, $password);