Итак, Новая функция mb_str_pad в PHP 8.3.
В PHP различные строковые функции доступны в двух вариантах: один для байтовых строк, а другой для многобайтовых строк (mb). Однако заметным отсутствием среди многобайтовых строковых функций mbstring является эквивалент str_pad(). В функции str_pad() отсутствует поддержка многобайтовых символов, что вызывает проблемы при работе с языками, использующими многобайтовые кодировки, такие как UTF-8. Этот RFC предлагает добавить в PHP такую функцию, которую мы будем называть mb_str_pad():
function mb_str_pad(
string $string,
int $length,
string $pad_string = " ",
int $pad_type = STR_PAD_RIGHT,
?string $encoding = null,
): string {}
var_dump(str_pad('Проверка', 10, '_', STR_PAD_RIGHT)); // Выведет: string(8) "Проверка"
// Тут же посчитается все верно и выведет два конечных __ после слова
var_dump(mb_str_pad('Проверка', 10, '_', STR_PAD_RIGHT));// string(10) "Проверка__"