Представляем функцию для перевода первого символа строки в верхний регистр mb_ucfirst
для многобайтовых кодировок.
Аналога ucfirst
для многобайтовых кодировок нет, хотя это довольная полезная функция. Комбинируя функции mb_strtoupper
(перевод строки в верхний регистр) и mb_substr
(получение подстроки), напишем код функции mb_ucfirst
.
function mb_ucfirst($str, $charset = ''){ if($charset == '') $charset = mb_internal_encoding(); $letter = mb_strtoupper(mb_substr($str, 0, 1, $charset), $charset); $suffix = mb_substr($str, 1, mb_strlen($str, $charset) - 1, $charset); return $letter.$suffix; }
$str = mb_convert_case($str, MB_CASE_TITLE, «UTF-8»);
echo $str; // Выведет У Мэри Был Маленький Ягненок И Она Его Очень Любила
http://php.net/manual/ru/function.mb-convert-case.php
Это не аналог этой функции. Флаг MB_CASE_TITLE вообще трудно представить где полезен будет, может быть в английском языке.