Количество символов в одних естественных языках при кодировании каждого отдельного символа восьмибитным значением не превышает количество символов в кодировке, в других языках количество символов для письменного общения не помещается в диапазон однобайтовой кодировки; байт состоит из восьми бит, каждый бит содержит одно значение: ноль или единицу, поэтому один байт представляет только 256 уникальных значений — два в восьмой степени. Схемы многобайтовых кодировок символов разработали для представления больше 256 символов в стандартной побайтовой системе.
При обработке многобайтовых строк — обрезке пробельных символов, разбиении, сращивании — вызывают специфичные функции, поскольку в таких схемах кодирования на представление одного символа требуется больше одного последовательного байта, и если применить к строке функцию, которая не поддерживает работу с многобайтовыми строками, функция наверняка неправильно определит начало и конец многобайтового символа, и в результате получит повреждённую мусорную строку, которая, скорее всего, потеряет исходное значение.
Модуль mbstring
предоставляет функции для работы с многобайтовыми строками.
Такие функции помогают работать с многобайтовыми кодировками в PHP. Кроме того,
модуль mbstring
конвертирует строки из одной кодировки в другую.
Модуль mbstring
спроектировали для обработки Unicode-кодировок наподобие UTF-8 и UCS-2
и удобной работы со множеством однобайтовых кодировок, которые перечисляет раздел
«Поддерживаемые кодировки символов».