Bagaimana Mengendalikan Rentetan Unicode (cth., Hindi) dalam PHP dan MySQL?

Barbara Streisand
Lepaskan: 2024-10-22 20:44:04
asal
103 orang telah melayarinya

How to Handle Unicode Strings (e.g., Hindi) in PHP and MySQL?

Menyimpan dan Memaparkan Rentetan Unikod (हिन्दी) Menggunakan PHP dan MySQL

Menyimpan dan memaparkan set aksara bukan Latin seperti Hindi dalam aplikasi web boleh mencabar, tetapi ia adalah penting untuk menyokong khalayak yang lebih luas. Berikut ialah panduan komprehensif tentang cara mencapai ini menggunakan PHP dan MySQL:

Menetapkan Parameter Pangkalan Data

  • Pastikan pangkalan data MySQL anda mempunyai set aksara dan pengumpulan yang betul dengan melaksanakan arahan ini :

    <code class="sql">SET character_set_database=utf8;
    SET collation_database=utf8_unicode_ci;</code>
    Salin selepas log masuk
  • Dalam takrifan jadual, nyatakan lajur untuk menyimpan data unikod sebagai VARCHAR dengan CHARACTER SET utf8mb4 dan COLLATE utf8mb4_unicode_ci.

Data Insertion and Retrieval >

    Apabila memasukkan data, masukkan terus rentetan Unicode ke dalam pangkalan data tanpa sebarang pengubahsuaian.
  • Untuk mendapatkan semula data dalam PHP, laksanakan pertanyaan berikut sebelum mengambil:

    <code class="php">mysql_query("SET NAMES utf8");</code>
    Salin selepas log masuk
  • Gunakan utf8_encode() untuk menukar rentetan Unicode kepada format UTF-8 sebelum memaparkannya.
Contoh Skrip PHP

<code class="php"><?php
header('Content-Type: text/html; charset=utf-8');

// Database connection
include('connection.php');

// Execute query with UTF-8 encoding
mysql_query("SET NAMES utf8");
$result = mysql_query("SELECT * FROM `hindi`");

// Fetch and display results
while ($row = mysql_fetch_row($result)) {
    echo utf8_encode($row[0]);
}
?></code>
Salin selepas log masuk
Pembuangan Pangkalan Data

Sahkan bahawa pelayan web dikonfigurasikan dengan betul untuk mengendalikan rentetan Unicode.

<code class="sql">CREATE TABLE `hindi` (
  `data` VARCHAR(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL
);

INSERT INTO `hindi` VALUES ('सूर्योदय');</code>
Salin selepas log masuk
Jika masalah berterusan, rujuk dokumentasi yang berkaitan atau dapatkan bantuan daripada forum seperti StackOverflow.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Rentetan Unicode (cth., Hindi) dalam PHP dan MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!