Heim > Datenbank > MySQL-Tutorial > Wie stelle ich die Zeichenkodierung für PDO-MySQL-Verbindungen richtig ein?

Wie stelle ich die Zeichenkodierung für PDO-MySQL-Verbindungen richtig ein?

Linda Hamilton
Freigeben: 2025-01-04 08:23:35
Original
794 Leute haben es durchsucht

How to Properly Set Character Encoding for PDO MySQL Connections?

Handhabung der PDO-Verbindungszeichenkodierung

Beim Aufbau einer MySQL-Verbindung mithilfe der PDO-Erweiterung (PHP Data Objects) ist die richtige Zeichenkodierung von entscheidender Bedeutung Gewährleistung der Datenintegrität und des korrekten Betriebs. Sehen wir uns an, wie Sie die Zeichenkodierung für eine PDO-Verbindung festlegen.

In der traditionellen mysql_*-Erweiterung, die in Ihrem vorherigen Code verwendet wurde:

mysql_set_charset("utf8",$link);
mysql_query("SET NAMES 'UTF8'");
Nach dem Login kopieren

Diese Befehle legen die Zeichenkodierung für die Verbindung fest. Bei PDO ist der Ansatz jedoch anders.

Um die Zeichenkodierung für eine PDO-Verbindung festzulegen, können Sie diese innerhalb der Verbindungszeichenfolge selbst angeben. Beispiel:

$connect = new PDO("mysql:host=$host;dbname=$db;charset=utf8mb4", $user, $pass, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
Nach dem Login kopieren

Diese Zeichenfolge hängt die Zeichensatzoption an die Verbindungszeichenfolge an und gibt die gewünschte Codierung an, in diesem Fall „utf8mb4“. Mit dieser Methode wird die Codierung festgelegt, wenn die Verbindung hergestellt wird.

Ältere PHP-Versionen

Wenn Sie jedoch eine PHP-Version vor 5.3.6 verwenden, ist der Zeichensatz Option in der Verbindungszeichenfolge wurde ignoriert. In diesem Fall müssen Sie eine alternative Methode verwenden:

$dbh = new PDO("mysql:host=$host;dbname=$db",  $user, $password);
$dbh->exec("set names utf8mb4");
Nach dem Login kopieren

Hier wird die Verbindung ohne Angabe der Kodierung hergestellt und die Methode exec() wird verwendet, um eine SQL-Abfrage auszuführen, um anschließend die Zeichenkodierung festzulegen Die Verbindung wird hergestellt.

Das obige ist der detaillierte Inhalt vonWie stelle ich die Zeichenkodierung für PDO-MySQL-Verbindungen richtig ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage