mb_convert_case
(PHP 4 >= 4.3.0, PHP 5)
mb_convert_case — 文字列に対してケースフォルディングを行う
説明
string mb_convert_case
( string
$str
, int $mode = MB_CASE_UPPER
[, string $encoding = mb_internal_encoding()
] )
mode
で指定された方法で string
に対してケースフォルディングを行います。
パラメータ
-
str -
変換される文字列。
-
mode -
変換モード。
MB_CASE_UPPER、MB_CASE_LOWERあるいはMB_CASE_TITLEのいずれかです。 -
encoding -
encodingパラメータには文字エンコーディングを指定します。省略した場合は、 内部文字エンコーディングを使用します。
返り値
mode
で指定された方法で string
に対してケースフォルディングを行った結果を返します。
Unicode
標準のケースフォルディング関数である strtolower() や strtoupper() と違い、ケースフォルディングは Unicode 文字属性を基準に行われます。したがって、この関数の挙動は ロケールの設定に影響されず、また、すべてのアルファベット、 例えば A ウムラウト (Ä) を変換することができます。
Unicode 文字属性についての詳細は » http://www.unicode.org/unicode/reports/tr21/ を参照してください。
例
例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; // 結果は Τάχιστη Αλώπηξ Βαφήσ Ψημένη Γη, Δρασκελίζει Υπέρ Νωθρού Κυνόσ
?>
参考
- mb_strtolower() - 文字列を小文字にする
- mb_strtoupper() - 文字列を大文字にする
- strtolower() - 文字列を小文字にする
- strtoupper() - 文字列を大文字にする
- ucfirst() - 文字列の最初の文字を大文字にする
- ucwords() - 文字列の各単語の最初の文字を大文字にする