Регистр первой буквы

proWoke

Новичок
Регистр первой буквы

Вот функция для перевода первой буквы русского алфавита, аналог ucfirst.
Код:
function rufirst ($a) 
{
$first = substr ($a,0,1);
$rest = substr ($a,1);
$first = strtr ($first,
       "абвгдеёжзийклмнопрстуфхцчшщьъэюя",
       "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЬЪЭЮЯ" );
$a = $first.$rest;
return($a);
}
Но когда пишу например, echo rufirst ("лалала");
Он всё равно в верхний не переводит. Почему? Вроде функция правильно написанна, я её тут на форуме нашёл и прекрасно понимаю как она работает, и по логике всё верно вроде. Помогите пожалуйста разобраться.
 

prolis

Новичок
Re: Регистр первой буквы

Я бы на месте компилятора оптимизировал код
PHP:
function rufirst ($a) 
{
  return($a);
}
 

dimagolov

Новичок
korpus, давай ты не будешь форум в конкурс гадалок превращать?

п.с. вопрос к ТС-у был задан в первом ответе, пока его не будет осуждать нечего.
 

weregod

unserializer
substr -> mb_substr

+
PHP:
mb_internal_encoding('utf8');
header('Content-Type: text/html; charset=utf8');
echo rufirst('уй');
cпасёт
 

proWoke

Новичок
Спасибо, всё заработало. Расскажите пожалуйста, а почему до этого не работало? Что я не так делал?
 
Сверху