Как перевести текст в нижний регистр на PHP

Форум для тех кто начинает осваивать язык php.
Аватара пользователя
Slash
Администратор
Сообщения: 2029
Поблагодарили: 62 раза

Как перевести текст в нижний регистр на PHP

Сообщение Slash » Сб окт 08, 2016 12:48 pm

Для перевода текста в нижний регистр в PHP есть функция strtolower. И она отлично справляется со своей задачей, например:

Код: Выделить всё

$en = 'Leo Tolstoy';

echo strtolower($en); # leo tolstoy      

Результат будет, как уже написано в комментарии к коду:
leo tolstoy

Все работает! Но если мы попробуем перевести в нижний кириллицу, то ни чего не изменится:

Код: Выделить всё

$ru = 'Лев Николаевич Толстой';

echo strtolower($ru); # Лев Николаевич Толстой     

Вот, что будет на экране:
Лев Николаевич Толстой

То есть ни чего не поменялось... Тут на помощь придет функция mb_strtolower (такая же, только с приставкой mb_). Данная функция работает с кириллическими символами:

Код: Выделить всё

$ru = 'Лев Николаевич Толстой';

echo mb_strtolower($ru); # лев николаевич толстой  

Результат:
лев николаевич толстой

Работает!

У функции mb_strtolower, может быть второй параметр - это кодировка, например UTF-8:

Код: Выделить всё

echo mb_strtolower($ru'UTF-8'); 

Если кодировку не указать в функции, то будет взята внутренняя кодировка.
Реклама

Вернуться в «PHP»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость