Mysql
 sql >> база данни >  >> RDS >> Mysql

UTF8 работен поток PHP, обобщен MySQL

  • mb_internal_encoding('UTF-8') не прави нищо само по себе си, задава само параметъра за кодиране по подразбиране за всеки mb_ функция. Ако не използвате mb_ функция, няма никаква разлика. Ако сте, има смисъл да го зададете, така че да не се налага да предавате $encoding параметър всеки път поотделно.
  • IMO mb_detect_encoding е предимно безполезен, тъй като е принципно невъзможно да се открие точно кодирането на неизвестен текст. Трябва или да знаете в какво кодиране се намира блоб текст, защото имате спецификация за него, или трябва да анализирате подходящи мета данни, като заглавки или мета маркери, където е посочено кодирането.
  • Използване на mb_check_encoding за да проверите дали петно ​​от текст е валидно в кодирането, в което очаквате да бъде, обикновено е достатъчно. Ако не е, изхвърлете го и изведете подходяща грешка.
  • Относно:

    Ако манипулирате низове, които съдържат многобайтови знаци, тогава да, трябва да използвате mb_ функции, за да се избегне получаването на грешни резултати. Функциите на основния низ работят само на ниво байт, а не на ниво символ, което обикновено искате, когато работите с низове.

  • utf8_general_ci срещу utf8_bin има разлика само при събиране , т.е. сортиране и сравняване на низове. С utf8_bin данните се третират в двоична форма, т.е. само идентични данни са идентични. С utf8_general_ci се прилага някаква логика, напр. "é" сортира заедно с "e" и главните букви се считат за равни на малки.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да преминете през всички таблици в база данни, за да актуализирате колони

  2. Търсене на разширен php/mysql скрипт за пагинация

  3. Обединяване на редове в същия идентификатор в масив

  4. ClassCastException:java.math.BigInteger не може да бъде прехвърлен към java.lang.Long при свързване към MySQL

  5. Променете таблицата, ако съществува, или създайте, ако не съществува