Който го мързи да чете,по-добре да не започва
Който има желание да се образова,да чете и да помни,
че може да го изтрият този роман.
За пореден път доказахме,че голяма част от нас не забелязваме в кой раздел е дадена тема (нищо лично към никой),
и често забравяме,че темата не е наша, и си задаваме въпроси от типа:
"Как си? Какво правиш?!..."
Аз предимно ползвам OpenSource програми като:
Geany, NetBeans IDE, PHP Development Tools(Eclipse), jEdit, Notepad++.
А от комерсиалните ползвам PhpStorm и Zend Studio 12.5
Нека започнем с това, че няма такова нещо като
"просто текст".
Операционните системи днес съхраняват всичко,
което сме написали, със съответна
схема на кодиране към него.
Какво ще рече кодиране?
Означава, че всеки байт информация зад нашия текст е свързан с определена знакова стойност.
Стойностите са подредени в таблица и тази таблица се ползва,
за да могат и други програми за разчитат и разбират написаното.
Защо е важна кодировката?
Kодирането спомага за това компютрите, комуникационната техника и разни други устройства,
които ползват текст, да могат да разбират текста по еднакъв начин.
Кой налага UTF-8?
UTF-8 кодировката става все по-важна в интернет пространството,по няколко причини:
IETF изисква всички нови интернет протоколи да поддържат UTF-8.
IETF (Internet Engineering Task Force) се грижи за разработването и налагането на уеб стандартите.
Работи в тясно сътрудничество с:
W3C (World Wide Web Consortium) и
ISO/IEC (International Organization for Standardization)-(International Electrotechnical Commission),
и се занимава в частност със стандартите на "Набора от интернет протоколи" (TCP/IP).
IMC (Internet Mail Consortium) препоръчва всички e-mail програми да представят и създават мейли чрез UTF-8.
Разликите между UTF-8 и UTF-8 without BOM
Какво изобщо е BOM?
Това е съкращение за Byte Order Mark.
С него се обозначава подредбата по битове (endianness)
на обем данни (текст), както са съхранени в паметта на компютъра.
Но тази подредба не е от значение при UTF-8.
Символен низ, написан на UTF-8 with BOM,
започва със следните байтове: EF BB BF,
но тези байтове се игнорират, когато се извлича записът от файла.
Поради това, вместо UTF-8 ,се задава използването на UTF-8 без BOM.
Когато създаваме уеб проект (дори съвсем прост),
също се съобразяваме с кодировката на файловете.
За HTML5 страниците задаваме UTF-8 (според препоръката на w3schools).
Записваме го като <meta charset=“UTF-8″ />.
Това е сред първите неща, които включваме в HTML кода,
но освен там, е важно да го отбележим и в редактора,
който използваме при писането.
Кодировка UTF-8 ще рече UTF-8 with BOM.
UTF-8 с включен BOM е последователност от байтове (EF BB BF),
която позволява на четящия да идентифицира файла като UTF-8 файл.
Unicode стандартът нито изисква, нито препоръчва използване на BOM.
В заключение:
Как използваме UTF-8, когато създваме файлове за уеб?
1- Съхраняваме файл(овете) в кодировка UTF-8 (въпреки препоръката да се запазват without BOM)
2- Декларираме <meta charset=“UTF-8″ /> за HTML5 ,или
<meta http-equiv=“content-type“ content=“text/html; charset=UTF-8″ /> за HTML4 документите.
3- Уеб сървърът задължително трябва да обслужва файловете ви в кодировка UTF-8
Важно е да се има предвид,
че Apache сървърите са конфигурирани да ползват по подразбиране кодировка ISO-8895-1,
поради което в
.htaccess файла се добавя следният ред:
AddDefaultCharset UTF-8
Кратка история на ASCII таблицата.
Без ASCII нямаше да се стигне и до UTF-8. Затова сега малко история.
Въпросното ASCII е американският кодов стандарт за информационен обмен.
Създаден е през 1963 г. от Комитета към Асоциацията по американски стандарт (ASA).
През 1969 г. името на агенцията се променя на Институт по американски национални стандарти (ANSI),
както е известен и до днес.
Поредицата кодове в ASCII се получава при пренареждане и разширяване на набора от символи и знаци,
използвани в телеграфията по това време от компанията на Bell.
Първоначално е включвал само главни букви и цифри,
но през 1967 г. са добавени малки букви и някои контролни знаци.
По този начин се стига до това, което днес познаваме като US-ASCII, т.е. знаците от 0 до 127.
Това е набор от общо 128 знака, определени през 1967 г. като стандарт,
и съдържат всичко необходимо за писане на английски език.
От ASCII към UTF-8
Кодировката UTF-8 е представена за пръв път на 2. септември 1992 г.
Към момента се използва от над 50% от уеб страниците.
UTF-8 е дело на Ken Thompson (създател на операционната система Unix),
и програмния език "В" (пряк предшественик на С).
Таблицата UTF-8 съвпада в първите си 128 кода с ASCII, за да има приемственост.
Позициите от 0 до 127 съдържат
еднобайтови кодове.
Останалите позиции обаче се представят с последователности от множество байтове:
състоят се от един
водещ байт и един или повече
следващи байтове.
Следващите 1920 кода от UTF-8 заемат по
два байта за своето кодиране.
Представят се със съответни числови стойности (кодови указатели),
които указват към съответни знаци.
Това позволява да се включат знаците на почти всички азбуки,производни на латинската:
Гръцката, кирилската, коптската, арменската, еврейската, арабската,
сирийската и таанската азбука, заедно с диакритични знаци.
По
три байта заемат останалата част от знаците в основната мултиезична група.
Кодовите указатели на Unicode поначало са разделени на
17 групи, всеки с по
216 указателя.
По
четири байта отнема кодирането в UTF-8 на знаците от останалите групи на Unicode,
които включват китайски, японски и корейски знаци,
както и различни исторически записи и математически символи.
Първоначалната спецификация на таблицата стига до 31-битови числа,
но през ноември 2003 г. UTF-8 е ограничена до
U+10FFFF,което е крайният знак в нея.
Причината е, че трябва да се съобрази с ограниченията на UTF-16.
Премахват се всички 5 и 6-байтови последователности,
както и около половината от 4-байтовите.