DANFA

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

Для перевода текста в нижний регистр в 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'); 

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