Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak prawidłowo obsługiwać międzynarodowy znak w PHP / MySQL / Apache

Apacze

Kodowanie serwera musi być nieskonfigurowane lub ustawione na UTF-8. Odbywa się to za pomocą dyrektywy Apache AddDefaultCharset. Może to przejść do wirtualnego hosta lub ogólnego pliku (patrz dokumentacja).

AddDefaultCharset utf-8

Mój SQL

  • Ustaw sortowanie bazy danych na UTF-8
  • Ustaw kodowanie połączenia. Można to zrobić, jak ktoś powiedział za pomocą mysqli_set_charset, lub wysyłając to zaraz po połączeniu:
    SET NAMES 'utf8' COLLATE 'utf8_unicode_ci'

PHP

1- Należy ustawić kod HTML strony na UTF-8, za pomocą metatagu na stronie lub nagłówka PHP:

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-or-
    header('Content-type: text/html; charset=utf-8');

2- Zawsze należy używać wersji mb* funkcji związanych z ciągami, na przykład mbstrlen zamiast strlen, aby uzyskać długość ciągu.

Powinno to pozwolić na używanie UTF-8 wszędzie, od stron po dane. Test, który możesz wykonać:kliknij prawym przyciskiem myszy w dowolnym miejscu strony za pomocą programu Firefox i wybierz Pokaż informacje o stronie. Efektywne kodowanie jest wymienione na tej stronie.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. data tabeli przestawnej mysql (dane od pionu do poziomu)

  2. Jak zainstalować MySQL 8.0 na CentOS 8 / RHEL 8?

  3. Dlaczego funkcja LEFT JOIN w MySQL zwraca rekordy NULL, gdy zawiera klauzulę WHERE?

  4. Wyzwalacz MySQL, jeśli warunek istnieje

  5. MySQL IN z LIKE