mb_convert_kana関数の基本構文
mb_convert_kana関数全角と半角、カタカナとひらがなに関する様々な変換を行います。
記号やスペース、濁点の扱いなどオプションによって変換内容を細かく指定できます。
mb_convert_kana ( string $string , string $mode = "KV" , string $encoding = null )
パラメータ
型 | 名前 | 初期値 | 説明 |
string | $string | 変換する対象の文字列 | |
string | $mode | KV | 変換内容を指定するオプション |
string | $encoding | null | エンコーディング文字列 例) SJIS, SJIS-win, ISO-2022-JP, JIS, UTF-8, EUC-JP |
変換が効かない場合や文字化けが起こる場合は文字エンコーディングを指定してみてください
modeのオプション一覧
オプション | 意味 |
r | 「全角」英字を「半角」に変換 |
R | 「半角」英字を「全角」に変換 |
n | 「全角」数字を「半角」に変換 |
N | 「半角」数字を「全角」に変換 |
a | 「全角」英数字を「半角」に変換 |
A | 「半角」英数字を「全角」に変換 |
s | 「全角」スペースを「半角」に変換 |
S | 「半角」スペースを「全角」に変換 |
k | 「全角カタカナ」を「半角カタカナ」に変換 |
K | 「半角カタカナ」を「全角カタカナ」に変換 |
h | 「全角ひらがな」を「半角カタカナ」に変換 |
H | 「半角カタカナ」を「全角ひらがな」に変換 |
c | 「全角カタカナ」を「全角ひらがな」に変換 |
C | 「全角ひらがな」を「全角カタカナ」に変換 |
V | 濁点付きの文字を一文字に変換します。”K”, “H” と共に使用 |
※記号を変換するにはAaオプションを使います。a=r+n, A=R+Nだと思いがちなので注意が必要です。
返り値(戻り値)
型 | 説明 |
string | 変換した後の文字列 |
mb_convert_kana関数の使い方
数字を全角から半角に変換
//数字を全角半角変換
echo mb_convert_kana("123", "n") . PHP_EOL;
出力
123
全角スペースを半角に変換
//スペースを全角半角変換
echo mb_convert_kana("全角スペース「 」", "s") . PHP_EOL;
出力
全角スペース「 」
記号を全角から半角に変換
記号の変換にはちょっと注意が必要です。aオプションを使う必要があります
//記号を半角にするにはa
echo mb_convert_kana("#$?", "rn") . PHP_EOL; //英数個別に指定してもダメ
echo mb_convert_kana("#$?", "a") . PHP_EOL; //aオプションなら記号変換できる
出力
#$?
#$?
半角カナの濁点を統合して1文字の全角カナに
//半角カナの濁点を統合して1文字の全角カナに
echo mb_convert_kana("ガギグゲゴ", "KV") . PHP_EOL; //VはKかHと一緒に使う
出力
ガギグゲゴ
全ての半角を全角・ひらがなに統一するサンプルコード
//オプション指定して全てを半確認統一
echo mb_convert_kana("ABCABC 123123あいうえおアイウエオアイウエオ ギャップ", "ASHcV") . PHP_EOL;
出力
ABCABC 123123あいうえおあいうえおあいうえお ぎゃっぷ
全ての全角を半角・カタカナに統一のサンプルソースコード
//オプション指定して全てを半確認統一
echo mb_convert_kana("ABCABC 123123あいうえおアイウエオアイウエオ ギャップ", "askh") . PHP_EOL;
出力
ABCABC 123123アイウエオアイウエオアイウエオ ギャップ
コメント