WordPressでの入稿等の動的コンテンツの出力などで、半角カタカナやアルファベットの全角・半角などが入稿者によってバラバラになってしまったり、変換したい場面があります。
そんな時に簡単に使えるmb_convert_kana関数を解説していきます。
mb_convert_kana関数の基本構文
mb_convert_kana関数はひらがな、カタカナ、英数字、記号をそれぞれ全角または半角に変換できる関数です。
まずは基本構文をご覧ください。
mb_convert_kana(変換したい文字列, オプション, 文字コード);
第1引数に変換したい文字列、第2引数に変換内容を示すオプション、第3引数に文字コードを記述します。
第3引数の文字コードは省略可能ですが、文字化けする可能性があるので指定した方がいいかと思います。
オプション一覧
変換内容を示すオプションは以下となります。
オプション | 変換内容 |
---|---|
r | 「全角」英字を「半角」に変換 |
R | 「半角」英字を「全角」に変換 |
n | 「全角」数字を「半角」に変換 |
N | 「半角」数字を「全角」に変換 |
a | 「全角」英数字を「半角」に変換 |
A | 「半角」英数字を「全角」に変換 |
s | 「全角」スペースを「半角」に変換 |
S | 「半角」スペースを「全角」に変換 |
k | 「全角カタカナ」を「半角カタカナ」に変換 |
K | 「半角カタカナ」を「全角カタカナ」に変換 |
h | 「全角ひらがな」を「半角カタカナ」に変換 |
H | 「半角カタカナ」を「全角ひらがな」に変換 |
c | 「全角カタカナ」を「全角ひらがな」に変換 |
C | 「全角ひらがな」を「全角カタカナ」に変換 |
V | 濁点付きの文字を一文字に変換。「K」,「H」 と一緒に使用 |
上記のオプションは、複数のオプションを組み合わせる事も可能となっています。
※記号を変換する場合は「A」または「a」となります。
文字コードについて
第3引数に指定出来る文字コードはASCII、JIS、UTF-8、EUC-JP、SJISなどがありますが、通常はUTF-8で問題ありません。文字化けするようなら環境に合わせた文字コードを指定してください。
また、mb_convert_kana関数の第3引数である文字コードは省略可能ですが、文字化けする可能性があるので指定しておいた方が無難です。
mb_convert_kana関数を使った使用例
下記にmb_convert_kana関数を使った使用例を掲載いたします。
参考にしてみてください。
英字を半角・全角に変換
// 半角に変換
mb_convert_kana("ABC", "r", "UTF-8");
// 実行結果:ABC
// 全角に変換
mb_convert_kana("ABC", "R", "UTF-8");
// 実行結果:ABC
数字を半角・全角に変換
// 半角に変換
mb_convert_kana("123", "n", "UTF-8");
// 実行結果:123
// 全角に変換
mb_convert_kana("123", "N", "UTF-8");
// 実行結果:123
英数字を半角・全角に変換
// 半角に変換
mb_convert_kana("ABC123", "a", "UTF-8");
// 実行結果:ABC123
// 全角に変換
mb_convert_kana("ABC123", "A", "UTF-8");
// 実行結果:ABC123
※記号を変換する場合にも上記の「A」または「a」を使用します。
スペースを半角・全角に変換
// 半角に変換
mb_convert_kana(" ", "s", "UTF-8");
// 実行結果:「 」
// 全角に変換
mb_convert_kana(" ", "S", "UTF-8");
// 実行結果:「 」
カタカナを半角・全角に変換
// 半角に変換
mb_convert_kana("アイウエオ", "k", "UTF-8");
// 実行結果:アイウエオ
// 全角に変換
mb_convert_kana("アイウエオ", "K", "UTF-8");
// 実行結果:アイウエオ
半角カタカナ・全角カタカナをひらがなに変換
// 半角カタカナをひらがなに変換
mb_convert_kana("アイウエオ", "H", "UTF-8");
// 実行結果:あいお
// 全角カタカナをひらがなに変換
mb_convert_kana("アイウエオ", "c", "UTF-8");
// 実行結果:うえ
ひらがなを半角カタカナ・全角カタカナに変換
// ひらがなを半角カタカナに変換
mb_convert_kana("あいうえお", "h", "UTF-8");
// 実行結果:アイウエオ
// ひらがなを全角カタカナに変換
mb_convert_kana("あいうえお", "C", "UTF-8");
// 実行結果:アイウエオ
濁点付きの文字を一文字に変換
// 濁点付きの半角カタカナを全角カタカナに変換
mb_convert_kana("ガギグゲゴ", "KV", "UTF-8");
// 実行結果:ガギグゲゴ
// 濁点付きの半角カタカナをひらがなに変換
mb_convert_kana("ガギグゲゴ", "HV", "UTF-8");
// 実行結果:がぎぐげご
濁点付きの文字を半角カタカナを全角カタカナやひらがなに変換すると、濁点が分かれて1文字が2文字になってしまいます。それを1文字で出力する為には、上記の「V」を併用します。
全ての半角を全角に変換
mb_convert_kana("123ABC アイウエオ", "AS", "UTF-8");
// 実行結果:123ABC アイウエオ
全ての全角を半角に変換(ひらがな以外)
mb_convert_kana("123ABC アイウエオ", "as", "UTF-8");
// 実行結果:123ABC アイウエオ
さいごに
いかがでしたでしょうか。
今回は全角や半角の変換を行うmb_convert_kana関数の使い方を解説しました。
しっかりと内容を覚えておくことで、自由に変換できるようになりますので、ぜひ使ってみて下さい。