skip to content
Logo
Yurikago Blog

PHP5.3 全角ひらがなの濁点を削除する

/ 1 min read

Table of Contents

mb_convert_kana を使って全角ひらがなから濁点を削除する方法をまとめました。

コード

/**
* 全角ひらがなの濁点を削除する
*
* @param $zenkakuHiragana
* @return string
*/
function removeDakutenFromZenkakuHiragana($zenkakuHiragana) {
$encode = "utf-8";
// 全角ひらがなを半角カタカナに変換
$hankakuKatakana = mb_convert_kana($zenkakuHiragana, "h", $encode);
// 半角カタカナを全角ひらがなに変換する
// 濁点が含まれる場合は1つの文字として変換される
$zenkakuHiragana = mb_convert_kana($hankakuKatakana, "H", $encode);
if (mb_strlen($zenkakuHiragana, $encode) > 1) {
// 濁点を除いた文字列を取得する
$zenkakuHiragana = mb_substr($zenkakuHiragana, 0, 1, $encode);
}
return $zenkakuHiragana;
}

参考: https://www.php.net/manual/ja/function.mb-convert-kana.php

テスト

echo removeDakutenFromZenkakuHiragana('');
// => か
echo removeDakutenFromZenkakuHiragana('');
// => は
echo removeDakutenFromZenkakuHiragana('');
// => あ