Tajuk: Sebab dan penyelesaian untuk maklumat Cina bercelaru yang disimpan dalam pangkalan data dalam PHP
Dalam proses menggunakan PHP untuk membangunkan laman web, kami sering menghadapi masalah maklumat Cina bercelaru disimpan dalam pangkalan data. Masalah ini disebabkan oleh pelbagai faktor, termasuk tetapan pengekodan pangkalan data, tetapan pengekodan PHP, tetapan pengekodan halaman, dll. Dalam artikel ini, kami akan memperkenalkan secara terperinci sebab mengapa maklumat PHP Cina disimpan dalam pangkalan data yang bercelaru, menyediakan penyelesaian dan melampirkan contoh kod tertentu.
Pertama sekali, pastikan tetapan pengekodan jadual dalam pangkalan data adalah konsisten dengan format pengekodan data. Format pengekodan jadual boleh diubah suai kepada UTF-8 melalui pernyataan SQL berikut:
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
Dalam fail PHP, tetapkan format pengekodan untuk memastikan bahawa data tidak akan bercelaru semasa penghantaran. Anda boleh menambah kod berikut pada permulaan fail PHP:
header('Content-Type: text/html; charset=utf-8');
Tambah tag meta berikut di kepala halaman web untuk menentukan bahawa format pengekodan halaman ialah UTF-8:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
Berikut ialah Contoh kod PHP ringkas menunjukkan cara menyimpan maklumat bahasa Cina dengan betul ke dalam pangkalan data:
<?php // 连接数据库 $servername = "localhost"; $username = "root"; $password = ""; $dbname = "test_db"; $conn = new mysqli($servername, $username, $password, $dbname); // 设置字符编码 $conn->set_charset("utf8"); // 处理中文信息 $name = "张三"; $age = 25; // 插入数据 $sql = "INSERT INTO users (name, age) VALUES ('$name', $age)"; if ($conn->query($sql) === TRUE) { echo "新记录插入成功"; } else { echo "Error: " . $sql . "<br>" . $conn->error; } $conn->close(); ?>
Dengan menetapkan format pengekodan pangkalan data, fail PHP dan halaman web dengan betul, anda boleh dengan berkesan elakkan masalah aksara bercelaru apabila maklumat Cina disimpan dalam pangkalan data. Semoga kandungan di atas dapat membantu anda!
Atas ialah kandungan terperinci Sebab dan penyelesaian untuk aksara bercelaru yang disimpan dalam maklumat PHP Cina dalam pangkalan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!