BNAME.RU » Блоги » Программирование » PHP » PHP преобразовать первый символ в верхний регистр - функция mb_ucfirst() в многобайтных кодировках и юникода

PHP преобразовать первый символ в верхний регистр - функция mb_ucfirst() в многобайтных кодировках и юникода

Многие замечали что стандартная функция ucfirst() преобразует строки с кириллическими русскими символами некорректно.
Как перевести первую букву в верхний регистр многобайтных кодировках?
Аналог PHP функции ucfirst. Работает многобайтными кодировками ( UTF-8 использует по умолчанию ).

function mb_ucfirst($string, $charset = 'UTF-8') {
    return mb_strtoupper(mb_substr($string, 0, 1, $charset), $charset) . 
    mb_substr($string, 1, mb_strlen($string, $charset), $charset);
}

Вызвать очень просто:

$string = 'слово';
echo mb_ucfirst($string,'UTF-8'); //Можно не задавать кодировку, по умолчанию UTF-8

Вернет строковое значение $string - где первый символ будет произведен в верхний регистр, в нужной вам кодировке.
Есть аналогичная функция ​mb_lcfirst()​​​
Спасибо за внимание!
PHP

Комментарии (0)

Онлайн статистика
36 посетителей на сайте. Из них:
Гости36