(PHP 4 >= 4.3.0, PHP 5, PHP 7)
mb_convert_case — Производит смену регистра символов в строке
$str
, int $mode
[, string $encoding
= mb_internal_encoding()
] ) : string
Производит смену регистра символов в строке (string) в
соответствии с режимом mode
.
str
Строка (string) для преобразования.
mode
Режим смены регистра. Это может быть одна из констант
MB_CASE_UPPER
,
MB_CASE_LOWER
,
MB_CASE_TITLE
,
MB_CASE_FOLD
,
MB_CASE_LOWER_SIMPLE
,
MB_CASE_UPPER_SIMPLE
,
MB_CASE_TITLE_SIMPLE
или
MB_CASE_FOLD_SIMPLE
.
encoding
Параметр encoding
представляет собой символьную кодировку. Если он опущен, вместо него будет использовано значение внутренней кодировки.
Строка string
, преобразованная в соответствии с режимом
mode
.
В отличие от стандартных функций смены регистра, вроде strtolower() и strtoupper(), смена регистра осуществляется на основе свойств символа Юникода. Таким образом, на поведение функции не влияют региональные настройки системы, и она может конвертировать любые символы, имеющие 'алфавитное' свойство, как например А-умляут (Ä).
Дополнительную информацию о свойствах Юникода смотрите по ссылке» http://www.unicode.org/unicode/reports/tr21/.
Пример #1 Пример использования mb_convert_case()
<?php
$str = "у мэри был маленький ягненок и она его очень любила";
$str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8");
echo $str; // Выведет У МЭРИ БЫЛ МАЛЕНЬКИЙ ЯГНЕНОК И ОНА ЕГО ОЧЕНЬ ЛЮБИЛА
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str; // Выведет У Мэри Был Маленький Ягненок И Она Его Очень Любила
?>
Пример #2 Пример использования mb_convert_case() с нелатинским UTF-8 текстом
<?php
$str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός";
$str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8");
echo $str; // Выведет ΤΆΧΙΣΤΗ ΑΛΏΠΗΞ ΒΑΦΉΣ ΨΗΜΈΝΗ ΓΗ, ΔΡΑΣΚΕΛΊΖΕΙ ΥΠΈΡ ΝΩΘΡΟΎ ΚΥΝΌΣ
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str; // Выведет Τάχιστη Αλώπηξ Βαφήσ Ψημένη Γη, Δρασκελίζει Υπέρ Νωθρού Κυνόσ
?>