Многобайтовые строки
&reftitle.intro;
Хотя и существует множество языков, в которых все необходимые символы можно
закодировать одним восьмибитным значением, существуют также и языки, требующие
столько символов, что они не умещаются в один байт (Байт состоит из восьми бит.
Каждый бит может содержать одно из двух различных значений, единицу или ноль.
Поэтому, один байт может задавать только 256 уникальных значений (два в восьмой степени)).
Схемы кодирования, использующие многобайтовые строки, были разработаны для того,
чтобы можно было пользоваться более, чем 256 символами, при этом продолжая работать
со строками, как будто они закодированы в обычной побайтовой системе.
Когда вы работаете с многобайтовыми строками (удаляете пробельные символы с
помощью функции trim, разбиваете строку на массив по регулярному выражению с
помощью функции split, и т.д.), необходимо использовать специальные функции,
так как в таких кодировках два или более последовательных байта могут задавать
один символ. Иначе, если применить функцию, не умеющую работать с многобайтовыми
строками, она, вероятно, не сможет определить начало и конец многобайтовых
символов, и в итоге вы получите строку-мусор, которая, скорее
всего, потеряет исходное значение.
mbstring предоставляет функции для работы с многобайтовыми строками,
которые облегчают работу c многобайтовыми кодировками в PHP. Кроме того,
mbstring занимается конвертированием строк из одной кодировки в другую.
mbstring предназначен для работы с Unicode-кодировками, такими, как UTF-8 и UCS-2,
а также со многими однобайтовыми кодировками для удобства (перечисленными в списке
Поддерживаемых кодировок символов).
&reference.mbstring.setup;
&reference.mbstring.constants;
&reference.mbstring.encodings;
&reference.mbstring.ja-basic;
&reference.mbstring.http-inout;
&reference.mbstring.supported-encodings;
&reference.mbstring.overloading;
&reference.mbstring.encoding-requirements;
&reference.mbstring.reference;