В данной статье сведен перечень приемов для правильной работы сайта в кодировке UTF-8.
Кодировка файлов PHP – «UTF-8 без BOM». Если сохраните с ним, то в файлах, где отправляются заголовки будет ошибка.
Для файлов .htacess кодировка должна быть ANSI, иначе будет ошибка 500.
Также кодировка файлов – UTF-8 и мета-тег в <body>
:
или
При обработке строковых данных использовать функции из mb_string, стандартные с UTF-8 работают некорректно. Например strlen()
возвращает неверное количество символов если в строке есть русские буквы.
Настройки mb_string в index.php:
mb_internal_encoding('UTF-8');
mb_regex_encoding('UTF-8');
mb_http_input('UTF-8');
mb_http_output('UTF-8');
mb_language('uni');
Или в .htaccess:
php_value mbstring.internal_encoding "UTF-8"
php_value mbstring.regex_encoding "UTF-8"
php_value mbstring.http_input "UTF-8"
php_value mbstring.http_output "UTF-8"
php_value mbstring.language "uni"
mb_send_mail()
.Кодировка таблиц MySQL в utf8_general_ci
, после соединения с БД сделать запрос: