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

PHP:проблеми с извеждането на utf8 от MySQL база данни с използване на PDO

Има множество точки на неуспех при работа с UTF8:

  • уверете се, че таблицата е utf8

    Използвайте SQL-команда Show Variables; за да проверите настройките на знаците на MySQL за таблицата.

  • вмъкнатите данни са utf8

    Може да опитате инструменти като phpMyAdminer или Администратор за да проверите дали
    данните са въведени правилно. Опитайте да вмъкнете данни чрез инструмента ръчно. Когато вмъквате чрез скрипт, не използвайте основни функции за низове. Винаги използвайте техните mbstring алтернативи. Задайте mb_internal_encoding( 'UTF-8' ); за да позволи на PHP да обработва вътрешно UTF-8.

  • извлечените данни са utf8

    Бих използвал само $pdo->exec("SET NAMES utf8"); и пуснете останалото. ЗащотоSET NAMES x е еквивалентен наSET character_set_client = x; SET character_set_results = x; SET character_set_connection = x;

  • показаните данни са utf8

    Ако това се показва в html страница, не забравяйте да зададете мета таг или заглавка
    "Content-Type: text/html; charset=utf-8" .




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Заседнал в изграждането на MySQL заявка

  2. Инсталиране на MySQLdb на Mac OS X

  3. Как да извлека всички редове, които съответстват на поне една стойност от масива?

  4. изберете от една таблица и вмъкнете в друга

  5. Необходим е съвет за правилно индексиране на таблица с много полета, в които да се търси