在護(hù)理系統(tǒng)的項(xiàng)目中有一個(gè)根據(jù)姓名排序功能,是將醫(yī)護(hù)人員姓名根據(jù)姓轉(zhuǎn)換為首字母,然后將首字母相同的歸為一類進(jìn)行快速,可以實(shí)現(xiàn)快速查找人員。
首先是將姓名的字符串拆分,只取第一個(gè)漢字,使用mb_substr函數(shù)拆分字符串然后只取第一個(gè),例如:
mb_substr('張三', 0, 1, 'utf-8') //結(jié)果返回 張
然后設(shè)置一個(gè)多音字?jǐn)?shù)組,配置好多音的姓以及想得到的首字母。
然后先判斷該數(shù)組中是否存在,如果存在就直接返回內(nèi)容
然后將漢字轉(zhuǎn)為ASCII碼值,使用ord方法,因?yàn)閱螡h字也是由字節(jié)組成,所以需要取第一個(gè)字節(jié)的ord乘以256然后加上第二個(gè)字節(jié)的ord減去65536
然后得到的結(jié)果有一個(gè)范圍對照表
最后就可以根據(jù)判斷 得到需要的結(jié)果了
關(guān)鍵詞: