Кодування windows-1251 і utf-8 що це і як використовується

Привіт, шановні читачі мого блогу. Сьогодні ми поговоримо з вами про кодування. Якщо ви читали мою статтю про те, як подивитися код сторінки в браузері. то знаєте, що будь-який документ в інтернеті зберігається не в тому вигляді, в якому ми звикли його бачити. Він записаний за допомогою незрозумілих людині символів і знаків. З текстом все одно.

Існує кілька кодувань, а тому, іноді побачивши незрозумілі символи при відкритті книги в мобільному додатку або запив статтю на сайт, ви, помінявши деякі значення в настройках, побачите звичний оку алфавіт.

Кодування windows-1251 і utf-8 що це і як використовується

Кодування windows-1251 - що це таке, яке значення вона має при створенні сайту, які символи будуть доступні і чи є вона найкращим рішенням на сьогоднішній день? Про все це в сьогоднішній статті. Як завжди, простою мовою, максимально зрозуміло і з мінімальною кількістю термінів.

трохи теорії

Будь-який документ на комп'ютері або в інтернеті, як я вже сказав, зберігається у вигляді двійкового коду. Наприклад, якщо ви використовуєте кодування ASCII, то буква «К» буде записана як 10001010, а windows +1251 під цим числом ховається символ - С ™. У підсумку, якщо браузер або програма звернеться до іншої таблиці і вважає замість ASCII коди windows 1251, то читач побачить абсолютно незрозумілі йому символ.

Логічне запитання, нафіга було вигадувати безліч таблиць з кодами? Справа в тому, що крім російського алфавіту існує ще й англійську, німецьку, китайську. За деякими підрахунками, існує близько 200 000 символів. Хоча, я не дуже довіряю цій статистиці, згадуючи про японський.

Не забувайте, що для великої і малої літери потрібно придумати свій код, є коми, тире і так далі.

Чим більше в таблиці символів, тим довше код кожного з них, а значить і вага документа стає більше.

Кодування windows-1251 і utf-8 що це і як використовується

Уявіть, якби одна книга важила 4 Гб! Вона б дуже довго завантажувалася, займала все вільне місце на комп'ютері. Рішення про скачування уявлялося б справою нелегкою.

З цих причин кожен програміст свого часу намагався придумати свою таблицю символів. Щоб було зручно для використання і вага зберігався оптимальним.

Microsoft, наприклад, для російськомовного сегмента створили windows-1251. У ній, звичайно ж, є свої переваги і недоліки. Як і у будь-якого іншого продукту.

Зараз вже, лише 2% всіх сторінок в інтернеті написано на 1251. Більшість веб-майстрів використовують UTF-8. Чому так?

Недоліки та гідності

UTF-8, на відміну від windows-1251 універсальна кодування, в ній містяться літери різних алфавітів. Існує навіть UTF-128, де є взагалі всі мови - Теуль, суахілі, лаоський, мальтійський і так далі.

Кодування windows-1251 і utf-8 що це і як використовується

UTF-8 бідніші, букви займають в рази менше місця і займають всього один байт пам'яті, як і в 1251. У УТФ є рідкісні символи з інших мов або спеціальні символи. Вони-то і важать по 5-6 байтів, але в документі використовуються вкрай рідко.

Це кодування більш продумана, а тому її використовує більшість додатків за замовчуванням. Тобто, якщо ви не вказуєте програмі, яке кодування ви використовуєте, то першим ділом він перевірить саме UTF-8.

Для цього необхідно вставити в тег head наступні дані. Після символів «charset =" йде або УТФ, або виндовс, як в прикладі нижче.

Кодування windows-1251 і utf-8 що це і як використовується

Якщо в подальшому ви захочете щось поміняти і вставити фразу албанською, використовуючи цю таблицю розшифровок, то нічого не вийде, адже цієї мови кодування не підтримує. UTF-8 без проблем дозволить вам це зробити.

Якщо вас зацікавило правильне створення сайту, то я можу порекомендувати вам курс Михайла Русакова «Створення та Розкрутка сайту від А до Я».

Кодування windows-1251 і utf-8 що це і як використовується

Сам я ось уже рік навчаюся в школі блогерів Олександра Борисова. Це займає в рази більше часу, кінця і краю поки не видно, але зате не менш вичерпно і дисциплінує. Мотивує продовжувати розробку.

Ну а якщо виникають питання, не потрібно шукати по інтернету. Завжди є грамотний наставник.

Кодування windows-1251 і utf-8 що це і як використовується

Щось я відійшов від теми. Давайте повернемося до кодувань.

бази банних

Коли мова йде про php, все взагалі страшно. Я вже розповідав про бази даних, вони використовуються для прискорення роботи сайту. Зазвичай, ви до них не звертаєтеся, але коли з'являється необхідність в перенесенні сайту стає не по собі.

Складнощі трапляються у всіх, байдуже якої у вас досвід роботи, стаж і вислуга років. Деякі сторінки в базі можуть містити в собі всі доступні символи для виндовс-1251, інші, наприклад, в шаблонах сторінок, в іншому кодуванні.

Поки не потрібен перенос все працює і функціонує, хоч і не зовсім правильно. Але після переїзду починаються неприємності. В ідеалі ви повинні використовувати або тільки УТФ, або виндовс-1251, але по факту завжди і у всіх трапляються ось такі недоліки.

Щоб розшифровка узгоджувалася необхідно вписати код mysql_query ( «SET NAMES cp1251»). В цьому випадку перетворення буде здійснювати по іншому протоколу - cp1251.

Кодування windows-1251 і utf-8 що це і як використовується

Якщо на сайті ви наполегливо вирішили використовувати саме 1251, то вам слід знайти або створити файл htaccess. Він відповідає за настройки конфігурації. У нього доведеться додати ще три рядки, щоб все зійшлося.

DefaultLanguage ru; AddDefaultCharset windows-1251; php_value default_charset "cp1251"

Я все ж настійно рекомендую вам задумати про використання UTF-8. Він популярніший, простий і багатий. Які б рішення ви не прийняли зараз, важливо, щоб згодом можна було все виправити. Додати англомовну версію сайту на цьому кодуванні буде в рази простіше. Нічого не потрібно виправляти.

Рішення залишається за вами. Підписуйтесь на розсилку, щоб дізнаватися якомога швидше створювати правильні сайти. де вчитися, щоб не повторювати чужих помилок, а також які блогери отримують більше відвідувачів.

До нових зустрічей і удачі у ваших починаннях.

Схожі статті