(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
mb_convert_case — 文字列に対してケースフォールディングを行う
$string
, int $mode
, ?string $encoding
= null
): string
mode
で指定された方法で string
に対してケースフォールディングを行います。
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
に対してケースフォールディングを行った結果を返します。
バージョン | 説明 |
---|---|
7.3.0 |
mode に
MB_CASE_FOLD ,
MB_CASE_UPPER_SIMPLE ,
MB_CASE_LOWER_SIMPLE ,
MB_CASE_TITLE_SIMPLE ,
MB_CASE_FOLD_SIMPLE のサポートが追加されました。
|
例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; // Prints MARY HAD A LITTLE LAMB AND SHE LOVED IT SO
$str = mb_convert_case($str, MB_CASE_TITLE, "UTF-8");
echo $str; // Prints Mary Had A Little Lamb And She Loved It So
?>
例2 非ラテン UTF-8 テキストでの 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; // 結果は Τάχιστη Αλώπηξ Βαφήσ Ψημένη Γη, Δρασκελίζει Υπέρ Νωθρού Κυνόσ
?>
標準のケースフォールディング関数である strtolower() や strtoupper() と違い、ケースフォールディングは Unicode 文字属性を基準に行われます。したがって、この関数の挙動は ロケールの設定に影響されず、また、すべてのアルファベット、 例えば A ウムラウト (Ä) を変換することができます。
Unicode 文字属性についての詳細は » http://www.unicode.org/reports/tr21/ を参照してください。