Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Boleh Menyimpan dan Memaparkan Rentetan Unicode dalam MySQL dan PHP?

Bagaimanakah Saya Boleh Menyimpan dan Memaparkan Rentetan Unicode dalam MySQL dan PHP?

Susan Sarandon
Susan Sarandonasal
2024-12-03 00:49:11586semak imbas

How Can I Store and Display Unicode Strings in MySQL and PHP?

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

Untuk menyimpan dan memaparkan rentetan Unicode seperti "सूर्योदय" dalam pangkalan data MySQL dan dapatkannya menggunakan PHP, ikuti ini langkah:

Persediaan Pangkalan Data:

  • Buat pangkalan data dengan pengekodan dan penyusunan UTF-8 (cth., UTF-8 general_ci).
  • Tambahkan medan VARCHAR pada jadual anda dengan set aksara UTF-8 property.

Menyimpan Rentetan:

  • Masukkan rentetan Unicode terus ke dalam pangkalan data menggunakan skrip PHP.
  • Pastikan skrip PHP anda menetapkan sifat set aksara dengan betul:

    • mysql_set_charset('utf8'); sebelum melaksanakan pertanyaan anda
    • Gunakan utf8mb4 sebagai set aksara anda untuk sokongan Unikod yang lebih baik

Mengambil dan Memaparkan Rentetan:

  • Gunakan mysql_query("SET NAMA utf8"); pada permulaan skrip PHP anda untuk menetapkan set aksara untuk sambungan.
  • Ambil rentetan daripada pangkalan data menggunakan pertanyaan.
  • Untuk memaparkan rentetan Unicode dengan betul dalam penyemak imbas web, gunakan echo(utf8_decode($string)). Ini akan menukar rentetan UTF-8 yang dikodkan kepada aksara Unikod yang sepadan.

Petua Tambahan:

  • Tetapkan Jenis Kandungan untuk dokumen HTML anda ke UTF-8 menggunakan:

    • atau gunakan pengepala('Content-Type: text/html; charset=utf-8') ; dalam PHP
  • Gunakan fungsi PHP serasi UTF-8 untuk manipulasi rentetan, seperti htmlentities() dan htmlspecialchars().

Penyelesaian Alternatif:

  • Simpan rentetan Unicode dalam pangkalan data sebagai Rakan sejawatan berkod UTF-8 (cth., सूर्योदय untuk "सूर्योदय").
  • Dapatkan semula rentetan yang dikodkan daripada pangkalan data dan kemudian nyahkodkannya untuk paparan digunakan html_entity_decode().

Nota:

Skrip sampel yang disediakan menggunakan fungsi mysql_ yang lebih lama. Untuk versi PHP yang lebih baharu, gunakan sambungan mysqli atau PDO untuk interaksi pangkalan data. Sintaks akan berbeza sedikit, tetapi prinsip keseluruhannya tetap sama.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menyimpan dan Memaparkan Rentetan Unicode dalam MySQL dan PHP?. 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