mb_convert_case
文字列に対してケースフォールディングを行う
説明
string mb_convert_case(string $string, int $mode, stringnull $encoding = null)
パラメータ
-
string
-
変換される文字列。
-
mode
-
変換モード。以下のうちいずれかひとつです。
MB_CASE_UPPER,
MB_CASE_LOWER,
MB_CASE_TITLE,
MB_CASE_FOLD,
MB_CASE_UPPER_SIMPLE,
MB_CASE_LOWER_SIMPLE,
MB_CASE_TITLE_SIMPLE,
MB_CASE_FOLD_SIMPLE
-
encoding
-
encoding
パラメータには文字エンコーディングを指定します。省略した場合、もしくは null の場合は、
内部文字エンコーディングを使用します。
戻り値
mode
で指定された方法で string
に対してケースフォールディングを行った結果を返します。
例
例1 mb_convert_case の例
<?php
$str = "mary had a Little lamb and she loved it so";
$str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8");
echo $str, PHP_EOL;
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str, PHP_EOL;
?>
例2 非ラテン UTF-8 テキストでの mb_convert_case の例
<?php
$str = "Τάχιστη αλώπηξ βαφής ψημένη γη, δρασκελίζει υπέρ νωθρού κυνός";
$str = mb_convert_case($str, MB_CASE_UPPER, "UTF-8");
echo $str, PHP_EOL;
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str, PHP_EOL;
?>
Unicode
標準のケースフォールディング関数である strtolower
や strtoupper と違い、ケースフォールディングは
Unicode 文字属性を基準に行われます。したがって、この関数の挙動は
ロケールの設定に影響されず、また、すべてのアルファベット、
例えば A ウムラウト (Ä) を変換することができます。
Unicode 文字属性についての詳細は » http://www.unicode.org/reports/tr21/
を参照ください。
参考
- mb_strtolower
- mb_strtoupper
- strtolower
- strtoupper
- ucfirst
- ucwords