1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
/* -------------------------------------------------------------
* -- ひらがな1文字から2桁数値へ変換(昇順コードづくり)--
* 【引数】:ひらがな一文字
* 【戻り値】:コード(2桁数値)
*
* 2016.05.18 作成:yoshi of CXMedia Inc.
* ------------------------------------------------------------- */
function hiraganamapping($str){
/* ---------------------------------------------------------------------
* ひらがなからコードへ変換するテーブル
* --------------------------------------------------------------------- */
$hiragana_map_ary = array(
'あ' => '10', 'い' => '11', 'う' => '12', 'え' => '13', 'お' => '14',
'ぁ' => '15', 'ぃ' => '16', 'ぅ' => '17', 'ぇ' => '18', 'ぉ' => '19',
'か' => '20', 'き' => '21', 'く' => '22', 'け' => '23', 'こ' => '24',
'が' => '25', 'ぎ' => '26', 'ぐ' => '27', 'げ' => '28', 'ご' => '29',
'さ' => '30', 'し' => '31', 'す' => '32', 'せ' => '33', 'そ' => '34',
'ざ' => '35', 'じ' => '36', 'ず' => '37', 'ぜ' => '38', 'ぞ' => '39',
'た' => '40', 'ち' => '41', 'つ' => '42', 'て' => '43', 'と' => '44',
'だ' => '45', 'ぢ' => '46', 'づ' => '47', 'で' => '48', 'ど' => '49',
'っ' => '50',
'な' => '55', 'に' => '56', 'ぬ' => '57', 'ね' => '58', 'の' => '59',
'は' => '60', 'ひ' => '61', 'ふ' => '62', 'へ' => '63', 'ほ' => '64',
'ば' => '65', 'び' => '66', 'ぶ' => '67', 'べ' => '68', 'ぼ' => '69',
'ぱ' => '70', 'ぴ' => '71', 'ぷ' => '72', 'ぺ' => '73', 'ぽ' => '74',
'ま' => '75', 'み' => '76', 'む' => '77', 'め' => '78', 'も' => '79',
'や' => '80', 'ゆ' => '81', 'よ' => '82',
'ゃ' => '83', 'ゅ' => '84', 'ょ' => '85',
'ら' => '90', 'り' => '91', 'る' => '92', 'れ' => '93', 'ろ' => '94',
'わ' => '95', 'ゎ' => '96', 'を' => '97', 'ん' => '98', '、' => '99',
' ' => '01', 'ー' => '02', '・' => '03', '~' => '04', '。' => '05',
'!' => '06', '?' => '07', '(' => '08', ')' => '09',
);
$str = (isset($hiragana_map_ary[$str]) && $str)? $hiragana_map_ary[$str] : '00';
return sprintf('%02d',$str);
}