PHP ialah bahasa pengaturcaraan sebelah pelayan yang biasa digunakan yang sering digunakan bersama dengan pangkalan data Semasa proses menulis kod, adalah perlu untuk menetapkan dan menyambungkan format pengekodan yang sepadan untuk memastikan paparan dan operasi membaca dan menulis yang betul. mempunyai watak istimewa seperti Cina.
1. Tetapan pengekodan PHP
1. Tetapkan set aksara lalai
PHP menggunakan fungsi pengepala() untuk menetapkan maklumat pengepala HTTP, termasuk tetapan set aksara. Pengekodan UTF-8 boleh digunakan untuk menyokong aksara bahasa Cina dan lain-lain Kod adalah seperti berikut:
header("Content-type: text/html; charset=utf-8");
2 Kod rentetan
Gunakan fungsi mb_internal_encoding() untuk menukar. Aksara lalai PHP ditetapkan kepada UTF-8 untuk memastikan pengekodan rentetan yang betul:
mb_internal_encoding("UTF-8");
3 Kodkan aliran input dan output
Dalam operasi baca dan tulis dengan fail atau sumber lain. , anda boleh menggunakan Parameter mod fungsi fopen() membuka fail atau strim dan menentukan format pengekodan. Contohnya:
$fp = fopen("$filename", "r") or die("文件打开失败!"); stream_filter_append($fp, 'convert.iconv.UTF-8/GBK');
2. Tetapan pengekodan pangkalan data dan sambungan
1 Tetapan pengekodan pangkalan data
Dalam pangkalan data MySQL, anda boleh melihat set aksara lalai melalui arahan berikut :
mysql> SHOW VARIABLES LIKE 'character_set%';
Jika anda perlu menukar set aksara, anda boleh menggunakan arahan SET NAMES, contohnya:
mysql> SET NAMES 'utf8';
Tetapan sambungan pangkalan data
Dalam PHP, dengan sambungan MySQL dilaksanakan melalui kelas mysqli() dan PDO(). Contoh sambungan menggunakan mysqli() adalah seperti berikut:
$conn = mysqli_connect($server, $user, $password, $dbname); mysqli_set_charset($conn, 'utf8');
Contoh sambungan menggunakan PDO() adalah seperti berikut:
$dsn = "mysql:host=$host;dbname=$dbname;charset=utf8mb4"; $options = [ PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION, PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC, PDO::ATTR_EMULATE_PREPARES => false, ]; $pdo = new PDO($dsn, $user, $password, $options);
Di atas adalah mengenai format pengekodan tetapan PHP , pangkalan data dan sambungannya Pengenalan Berkaitan. Dalam pengaturcaraan sebenar, kaedah yang sesuai perlu dipilih untuk tetapan dan sambungan berdasarkan keadaan tertentu untuk memastikan ketepatan dan kestabilan kod semasa memproses aksara khas seperti bahasa Cina.
Atas ialah kandungan terperinci Bagaimana untuk menetapkan format pengekodan sambungan pangkalan data dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!