Введение

Хотя и существует множество языков, в которых все необходимые символы можно закодировать одним восьмибитным значением, существуют также и языки, требующие столько символов, что они не умещаются в один байт (Байт состоит из восьми бит. Каждый бит может содержать одно из двух различных значений, единицу или ноль. Поэтому, один байт может задавать только 256 уникальных значений (два в восьмой степени)). Схемы кодирования, использующие многобайтовые строки, были разработаны для того, чтобы можно было пользоваться более, чем 256 символами, при этом продолжая работать со строками, как будто они закодированы в обычной побайтовой системе.

Когда вы работаете с многобайтовыми строками (удаляете пробельные символы с помощью функции trim, разбиваете строку на массив по регулярному выражению с помощью функции split, и т.д.), необходимо использовать специальные функции, так как в таких кодировках два или более последовательных байта могут задавать один символ. Иначе, если применить функцию, не умеющую работать с многобайтовыми строками, она, вероятно, не сможет определить начало и конец многобайтовых символов, и в итоге вы получите строку-мусор, которая, скорее всего, потеряет исходное значение.

mbstring предоставляет функции для работы с многобайтовыми строками, которые облегчают работу c многобайтовыми кодировками в PHP. Кроме того, mbstring занимается конвертированием строк из одной кодировки в другую. mbstring предназначен для работы с Unicode-кодировками, такими, как UTF-8 и UCS-2, а также со многими однобайтовыми кодировками для удобства (перечисленными в списке Поддерживаемых кодировок символов).

add a note add a note

User Contributed Notes 1 note

up
-59
Ant P.
15 years ago
As mentioned on the "Function Overloading" page, you can get the benefits of this module in existing code with almost zero effort on your part - just set "mbstring.func_overload" in php.ini.
To Top