Регистр текста
Верхний и нижний регистр
Сделать буквы заглавными или маленькими можно через функции mb_strtoupper()
и mb_strtolower()
.
$text = 'Текст';
$text = mb_strtoupper($text, 'UTF-8'); // ТЕКСТ
$text = mb_strtolower($text, 'UTF-8'); // текст
Функции strtoupper()
и strtolower()
не рекомендуется использовать, т.к. они не понимают юникод (т.е. не преобразует русские символы в указанный регистр).
Первая буква заглавная
Сделать первую букву заглавной можно через функцию mb_ucfirst()
.
mb_ucfirst('текст'); // Текст (с версии PHP 8.4)
Функцию ucfirst()
не рекомендуется использовать, т.к. она не понимает юникод, т.е. она не преобразует русские символы в верхний регистр. До версии PHP 8.4 создавалась отдельная функция:
if (!function_exists('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);
}
}
echo mb_ucfirst('zend'); // Zend
echo mb_ucfirst('зенд'); // Зенд
Сделать каждое слово с заглавной буквы
Сделать каждое слово с заглавной буквы можно через функцию mb_convert_case()
.
mb_convert_case('hello world', MB_CASE_TITLE); // Hello World
mb_convert_case('привет мир', MB_CASE_TITLE); // Привет Мир
Также есть функция ucwords()
, но она не понимает юникод, т.е. она не преобразует русские символы в верхний регистр.
Проверить текст на верхний или нижний регистр
Для проверки текста, что она является в верхнем или нижнем регистре, создаются отдельные функции.
function isUpper($text) {
return $text == mb_strtoupper($text);
}
function isLower($text) {
return $text == mb_strtolower($text);
}
isUpper('PHP'); // true
isUpper('php'); // false
isLower('php'); // true
isLower('PHP'); // false
В PHP есть функции ctype_upper()
, ctype_lower()
, IntlChar::islower()
и IntlChar::isupper()
которые проверяют регистр текста, но они не понимают юникод (т.е. для русского языка всегда возвращают «false»).
Поддержать автора
Все статьи создаются и поддерживаются одним человеком,
если вам нравится контент, вы можете поддержать автора сайта