Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Alur kerja UTF8 PHP, MySQL diringkas

  • mb_internal_encoding('UTF-8') tidak melakukan apa pun dengan sendirinya, itu hanya menetapkan parameter penyandian default untuk setiap mb_ fungsi. Jika Anda tidak menggunakan mb_ fungsi, tidak ada bedanya. Jika ya, masuk akal untuk mengaturnya sehingga Anda tidak harus melewati $encoding parameter setiap kali secara individual.
  • IMO mb_detect_encoding sebagian besar tidak berguna karena pada dasarnya tidak mungkin untuk secara akurat mendeteksi pengkodean teks yang tidak dikenal. Anda harus mengetahui pengkodean gumpalan teks karena Anda memiliki spesifikasi tentangnya, atau Anda perlu mengurai data meta yang sesuai seperti header atau tag meta tempat pengkodean ditentukan.
  • Menggunakan mb_check_encoding untuk memeriksa apakah gumpalan teks valid dalam penyandian yang Anda harapkan biasanya sudah cukup. Jika tidak, buang dan berikan kesalahan yang sesuai.
  • Tentang:

    Jika Anda memanipulasi string yang berisi karakter multibyte, maka ya, Anda perlu menggunakan mb_ berfungsi untuk menghindari mendapatkan hasil yang salah. Fungsi string inti hanya berfungsi pada level byte, bukan level karakter, yang biasanya Anda inginkan saat bekerja dengan string.

  • utf8_general_ci vs. utf8_bin hanya membuat perbedaan saat mengumpulkan , yaitu menyortir dan membandingkan string. Dengan utf8_bin data diperlakukan dalam bentuk biner, yaitu hanya data identik yang identik. Dengan utf8_general_ci beberapa logika diterapkan, mis. "é" mengurutkan bersama-sama dengan "e" dan huruf besar dianggap sama dengan huruf kecil.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. GROUP_CONCAT dengan batas

  2. cara mendapatkan jumlah kolom dengan kueri codeigniter

  3. Menghitung jumlah kueri yang dilakukan

  4. Bagaimana cara mengatur varchar agar panjangnya tidak terbatas?

  5. mysqli_connect():(HY000/2002):Tidak dapat terhubung ke server MySQL lokal melalui soket