Использование кодировки UTF-8
Автор: cyberacing. Опубликовано: 20 Февраля 2011
Не существует самого лучшего браузера, самого лучшего текстового редактора, самой лучшей операционной системы. А самая лучшая кодировка существует. Это UTF‑8. Главное ее преимущество заключается в том, что вы можете непосредственно включать в документ любые символы из всего набора Unicode. С UTF‑8 возникают проблемы на веб‑сервере? Здесь неприятность в том, что страница сделана в одной кодировке, а сервер в заголовках HTTP сообщает другую. Надо привести настройки сервера в соответствие с действительной кодировкой веб‑страниц. Чтобы PHP сайт правильно заработал с Юникодом необходимо сделать несколько операций. Для начала необходимо в секции <head> HTML-страницы прописать тег meta:
<meta http-equiv="content-type" content="text/html; charset=utf-8">
Но несмотря на то, что с помощью тега meta указана верная кодировка, все браузеры по-прежнему упорно считают, что документ пришел в Windows-1251. Дело в том, что сервер отправляет кодировку в заголовке ответа. То есть сервер считает, что страница должна быть в кодировке Windows-1251, о чем говорит браузеру заголовком Content-type.
Content-type: text/html; charset=windows-1251
Для решения этой проблемы необходимо сделать одно из двух действий (а лучше сразу оба). Во-первых, написать в начале скрипта (перед выводом HTML) следующее:
<?php header('Content-type: text/html; charset=utf-8'); ?>
Во-вторых, указать в файле .htaccess нужную кодировку:
AddDefaultCharset utf-8
Для чего же тогда тег meta? Для статичных страничек HTML или же, если пользователь сохранит документ для автономной работы.
Но на сайте обычно используется еще и база данных. Для неё тоже хорошо бы использовать кодировку UTF-8, а то могут возникнуть сложности, и на экране будут ромбики с вопросами. Что нужно сделать для этого? Ну наверно стоит для самой базы, для всех таблиц в базе и для всех текстовых полей использовать кодировку utf8_unicode_ci. Но обычно этого недостаточно. Тогда в код сайта, после функций mysql_connect и mysql_select_db добавляем строчку:
mysql_query("SET NAMES utf8");
Теперь можно наслаждаться самой лучшей кодировкой UTF-8!
Метки: Кодинг
Комментарии
tahzbi
31 Августа 2011 в 19:19
eMZiBD , [url=http://ixvpybwrzbbm.com/]ixvpybwrzbbm[/url], [link=http://qrmdyetfkiue.com/]qrmdyetfkiue[/link], http://gopjxmrtxmes.com/
Добавить комментарий
Популярные записи
Принцип неопределённости в РНР
Принцип неопределённости в MYSQL
Эмуляция плавности в ActionScript.
Программная анимация в ActionScript
Анимация при наведении в ActionScript
Принцип неопределённости в PHP - праздник продолжается!
Облако тегов
ActionScript Ajax CMS jQuery MYSQL PHP XHTML Анализатор Канализатор Кодинг Мяу Продвижение Советы Студия Яндекс
