Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Menetapkan Pengekodan Aksara dalam Sambungan Pangkalan Data PDO?

Bagaimana untuk Menetapkan Pengekodan Aksara dalam Sambungan Pangkalan Data PDO?

Linda Hamilton
Linda Hamiltonasal
2024-12-15 08:08:13908semak imbas

How to Set Character Encoding in PDO Database Connections?

Pengekodan Aksara PDO

Dalam sambungan pangkalan data sebelumnya menggunakan MySQL, adalah perkara biasa untuk menetapkan set aksara secara manual menggunakan mysql_set_charset() dan mysql_query( "TETAPKAN NAMA 'UTF8'"). Walau bagaimanapun, apabila menggunakan PDO (Objek Data PHP), set aksara boleh ditentukan dalam rentetan sambungan.

Rentetan Sambungan PDO dengan Set Aksara

Untuk menetapkan set aksara dalam rentetan sambungan, tambahkan pilihan charset kepada pembina PDO. Contohnya:

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

Versi PHP Sebelum 5.3.6

Jika anda menggunakan versi PHP sebelum 5.3.6, pilihan charset dalam rentetan sambungan tidak diendahkan. Dalam kes ini, anda boleh menggunakan kod berikut untuk menetapkan set aksara selepas menyambung:

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

Dengan menggunakan kaedah ini, anda boleh memastikan sambungan PDO anda mempunyai pengekodan aksara yang betul untuk aplikasi anda.

Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Pengekodan Aksara dalam Sambungan Pangkalan Data PDO?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn