Cara menyelesaikan masalah sambungan PHP ke MySQL
MySQL ialah sistem pengurusan pangkalan data hubungan yang biasa digunakan, dan PHP ialah bahasa skrip sebelah pelayan yang popular, kedua-duanya sering digunakan dalam kombinasi untuk membangunkan tapak web dan aplikasi . Apabila menggunakan PHP untuk menyambung ke pangkalan data MySQL, kami sering menghadapi masalah data Cina yang bercelaru, yang membawa beberapa masalah kepada pembangun. Artikel ini akan memperkenalkan beberapa kaedah yang berkesan untuk menyelesaikan masalah sambungan PHP yang bercelaru ke MySQL, dan memberikan contoh kod khusus.
Pertama sekali, pastikan tetapan set aksara pangkalan data dan jadual adalah betul. Apabila mencipta pangkalan data, anda harus memilih set aksara yang sesuai, seperti utf8 atau utf8mb4. Juga nyatakan set aksara yang betul dan peraturan penyusunan semasa membuat jadual. Contohnya:
CREATE DATABASE my_database CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE TABLE my_table ( id INT AUTO_INCREMENT, name VARCHAR(50) CHARACTER SET utf8mb4, PRIMARY KEY (id) ) ENGINE=InnoDB CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Apabila PHP menyambung ke pangkalan data MySQL, anda perlu menetapkan set aksara kepada utf8mb4 untuk memastikan penyimpanan dan pembacaan data yang betul. Anda boleh menambah penyataan berikut dalam kod untuk menyambung ke pangkalan data:
$mysqli = new mysqli("localhost", "username", "password", "my_database"); $mysqli->set_charset("utf8mb4");
Sebelum melaksanakan pernyataan pertanyaan SQL, anda juga perlu menetapkan set aksara kepada utf8mb4. Anda boleh menambah pernyataan berikut sebelum melaksanakan pernyataan pertanyaan:
$mysqli->query("SET NAMES 'utf8mb4'");
Apabila memproses data Cina dalam PHP, anda perlu memastikan untuk menggunakan pengekodan UTF-8. Pengekodan UTF-8 digunakan apabila menyimpan data ke atau membaca data daripada pangkalan data. Contohnya:
$name = "张三"; $name = utf8_encode($name); // 将字符串转换为 UTF-8 编码 $result = $mysqli->query("INSERT INTO my_table (name) VALUES ('$name')");
Akhir sekali, apabila memaparkan data pada halaman web, anda juga mesti menetapkan pengekodan halaman kepada UTF-8 untuk memastikan data Cina dipaparkan dengan betul. Anda boleh menambah kod berikut pada pengepala HTML:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
Melalui kaedah di atas, anda boleh menyelesaikan masalah bercelaru data Cina dengan berkesan yang berlaku apabila PHP menyambung ke pangkalan data MySQL. Mengikuti tetapan set aksara yang betul dan spesifikasi pengekodan boleh memastikan penyimpanan, pembacaan dan paparan data yang betul. Saya harap kandungan di atas dapat membantu semua.
Atas ialah kandungan terperinci Cara yang berkesan untuk menyelesaikan masalah kod bercelaru apabila menyambungkan PHP ke MySQL. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!