作成日:2017-11-28, 更新日:2018-03-20
大文字と小文字
- 大文字→小文字
-
echo strtolower(文字列)
- 小文字→大文字
-
echo strtoupper(文字列)
仮名とカナ、全角と半角たち
echo mb_convert_kana(文字列, オプション)
オプション
r | 「全角」英字を「半角」に変換 | R | 「半角」英字を「全角」に変換 |
---|---|---|---|
n | 「全角」数字を「半角」に変換 | N | 「半角」数字を「全角」に変換 |
a | 「全角」英数字を「半角」に変換 | A | 「半角」英数字を「全角」に変換 |
s | 「全角」スペースを「半角」に変換(U+3000 -> U+0020) | S | 「半角」スペースを「全角」に変換(U+0020 -> U+3000) |
k | 「全角カタカナ」を「半角カタカナ」に変換 | K | 「半角カタカナ」を「全角カタカナ」に変換 |
h | 「全角ひらがな」を「半角カタカナ」に変換 | H | 「半角カタカナ」を「全角ひらがな」に変換 |
c | 「全角カタカナ」を「全角ひらがな」に変換 | C | 「全角ひらがな」を「全角カタカナ」に変換 |
V | 濁点付きの文字を一文字に変換"K", "H" と共に使用 |
- KVで変換
- 半角カタカナから全角カタカナへの変換。「ヷ・ヺ」が変換されない
- HVで変換
- 半角カタカナからひらがなへの変換。「ゔ」が変換されない
- cで変換
- 全角カタカナからひらがなへの変換。「ヴヽヾヵヶ」は変換されない。また、ひらがなに無い「ヷヸヹヺ」も変換されない
- cで変換
- 全角カタカナからひらがなへの変換。「ヴヽヾヵヶ」は変換されない。また、ひらがなに無い「ヷヸヹヺ」も変換されない
- KVで変換
- 濁点・半濁点の結合「U+309B」「U+309C」。半角カタカナからの変換の時以外には何も変換されない
- aで変換
- 全角英数字から半角英数字への変換。「"'\~」は変換されない
- Aで変換
- 半角英数字から全角英数字への変換。「" ' \ ~」は変換されない
検索させるとき
検索する文字と元データの文字を誰が入力するのかが問題。
空白や全角、カナなど考慮するのが面倒なので、検索前に少し調整しておきたい。
function chgWord($word) { $fixWord = $word; // KVC:「半角カナ(濁点付きの文字)、全角かな」を「全角カナ」 // a :「全角英数字」を「半角英数字」 // s :「全角スペース」を「半角スペース」 $fixWord = mb_convert_kana($fixWord, 'KVCas'); // mb_convert_kana()で対応できなかった記号変換 $seedAry = array('"', ''', '\', '~',); $chngAry = array('"', "'", "\\", '~',); $fixWord = str_replace($seedAry, $chngAry, $fixWord); // 空白やタブ、改行等を削除 $spceAry = array(' ', "\t", "\n", "\r", "\0", "\x0B"); $fixWord = str_replace($spceAry, '', $fixWord); // 大文字→小文字 $fixWord = strtolower($fixWord); return $fixWord; }