MySQLなどでカタカナのソートを書けるときに濁点や半濁点があると思った通りのソートがかけられないことがあります。対処法としてはデータベースに一項目濁点と半濁点を抜いた文字列を格納するか、データベースから取り出してからカタガナのソートをプログラムで処理するかです。
前者の方が手間と時間がかからいのでお勧めですが、状況によってはプログラムの処理をする場合もあるかと思います。
データベースに格納する前段階として、データベースから取り出してフリガナのデータを処理するにして以下のプログラムは使えると思います。
[PHP]
$temp = "ドウカナ"
$temp = mb_convert_kana($temp,"k"); //半角カタカナにする
$temp = mb_ereg_replace("゙|゚","",$temp); //半角カタカナにすると濁点や半濁点が一時になるので消去
$temp = mb_convert_kana($temp,"K"); //全角カタカナにする
*半角カタカナにすると濁点と半濁点が一つの文字として分離する点がキーとなっています。
コメントする