if (!function_exists('mb_ucfirst') && extension_loaded('mbstring'))
    {
/**
* mb_ucfirst - преобразует первый символ в верхний регистр
* @param string $str - строка
* @param string $encoding - кодировка, по-умолчанию UTF-8
* @return string
*/
    function mb_ucfirst($str, $encoding='UTF-8'){
        $str = mb_ereg_replace('^[\ ]+', '', $str);
        $str = mb_strtoupper(mb_substr($str, 0, 1, $encoding), $encoding).
        mb_substr($str, 1, mb_strlen($str), $encoding);
        return $str;
    }
}
$str = 'первые буквы';
// пробуем кириллицу в юникоде преобразовать функцией ucfirst
echo ucfirst($str) . '<br>';
//Результат: первые буквы
// пробуем кириллицу в юникоде преобразовать функцией ucwords
echo ucwords($str) . '<br>';
//Результат: первые буквы
// обрабатываем объявленной функцией mb_ucfirst()
echo mb_ucfirst($str) . '<br>';
//Результат: Первые буквы
// преобразовываем функцией mbconvertcase
echo mb_convert_case($str, MB_CASE_TITLE, 'UTF-8');
//Результат: Первые Буквы
