Функция - mb_ucfirst в php
Функция mb_ucfirst не существует, поэтому её чаще всего пишут самостоятельно! Поскольку интернет забит разными вариантами функции mb_ucfirst, то нам нужно найти работающую и применить у себя!
О функции mb_ucfirst
Функция mb_ucfirst в php
Для чего нужна функция mb_ucfirst в php - дадим определение.
Функция mb_ucfirst предназначена для преобразования
Каждая функция имеет свой алгоритм и когда её пишут, то она и подчиняется этому алгоритму.
Какой алгоритм создания первой буквы ПРОПИСНОЙ!?
Предположим у нас есть строка:
Нам нужно разложить данную строку на две части:
первая буква - "м" - сделать её "ПРОПИСНОЙ", и все остальное - "ама мыла раму".
Теперь эти две части собрать и вернуть! всё!
Работающая функция mb_ucfirst в php
function mb_ucfirst($string, $enc = 'UTF-8')
{
return
}
Как я уже говорил выше, здесь мы видим две части, которые разбивают строку и получают первый элемент строки и все остальное, а потом соеденяют с помощью точки.
Не будем выводить отдельную переменную $enc, заменим её сразу на кодировку UTF-8, в переменную поместим нашу строку:
$string = 'мама мыла раму';
echo mb_strtoupper(mb_substr($string, 0, 1, 'UTF-8'), 'UTF-8');
Результат работы первой части функции mb_ucfirst
Тоже самое проделаем со второй частью:
$string = 'мама мыла раму';
echo mb_substr($string, 1, mb_strlen($string, 'UTF-8'), 'UTF-8');
Результат работы второй части функции mb_ucfirst
$string = 'мама мыла раму';
echo mb_strtoupper(mb_substr($string, 0, 1, 'UTF-8'), 'UTF-8').mb_substr($string, 1, mb_strlen($string, 'UTF-8'), 'UTF-8');
Окончательная работа функции mb_ucfirst в php
Вторая функция mb_ucfirst в php
Вообще, я протестировал несколько готовых функций, но лучше этого варианта, что приведен выше, я не встречал - это действительно! элегантное и простое решение!
Красота "PHP" в функции!
Вторая функция mb_ucfirst в php
Вторая функция mb_ucfirst
function mb_ucfirst($string, $enc = 'UTF-8')
{
return mb_strtoupper(mb_substr($string, 0, 1, $enc), $enc) . mb_substr($string, 1, mb_strlen($string, $enc), $enc);
}
Мама мыла раму