Вход
testopay.com

Что такое кодировка текста? Юникод и кодировки Utf-8, ANSI, Windows-1251

birds
Администратор

Сообщений: 646

Благодарности: 99

На форуме: с 02.03.20

05 мая 2022   09:25

Часто в веб-программировании и вёрстке html-страниц приходится думать о кодировке редактируемого файла - ведь если кодировка выбрана неверная, то есть вероятность, что браузер не сможет автоматически её определить и в результате пользователь увидит т.н. "кракозябры".

Возможно, вы сами видели на некоторых сайтах вместо нормального текста непонятные символы и знаки вопроса. Всё это возникает тогда, когда кодировка html-страницы и кодировка самого файла этой страницы не совпадают.

Вообще, что такое кодировка текста? Это просто набор символов, по-английски "charset " (character set). Нужна она для того, чтобы текстовую информацию преобразовывать в биты данных и передавать, например, через Интернет.

Собственно, основные параметры, которыми различаются кодировки - это количество байтов и набор спец.символов, в которые преобразуется каждый символ исходного текста.
h2>Краткая история кодировок:

Одной из первых для передачи цифровой информации стало появление кодировки ASCII - American Standard Code for Information Interchange - Американская стандартная кодировочная таблица, принятая Американским национальным институтом стандартов - American National Standards Institute (ANSI).

В этих аббревиатурах можно запутаться :). Для практики же важно понимать, что исходная кодировка создаваемых текстовых файлов может не поддерживать все символы некоторых алфавитов (к примеру, иероглифы), потому идёт тенденция к переходу к т.н. стандарту Юникод (Unicode), который поддерживает универсальные кодировки - Utf-8, Utf-16, Utf-32 и др.

Самая популярная из кодировок Юникода - кодировка Utf-8. Обычно в ней сейчас верстаются страницы сайтов и пишутся разные скрипты. Она позволяет без проблем отображать различные иероглифы, греческие буквы и прочие мыслимые и немыслимые символы (размер символа до 4-х байт). В частности, все файлы WordPress и Joomla пишутся именно в этой кодировке. А также некоторые веб-технологии (в частности, AJAX) способны нормально обрабатывать только символы utf-8.

Установка кодировок файла

В Рунете же ещё можно встретить сайты, написанные с расчётом на кодировку Windows-1251 (или cp-1251). Это специальная кодировка, предназначенная специально для кириллицы.

Почему вообще необходимо иметь представление о разных кодировках? Дело в том, что нередко на том же WordPress можно встретить, например, в Footer'е знаки вопроса вместо нормального текста. Это просто говорит о том, что php-файл Footer'а сохранён в одной кодировке, а в заголовке html-страницы указана совсем другая кодировка.