獲取通訊庫(kù)中外文首字排序(加強(qiáng)篇)

??上一篇用到的獲取首字母并不全面刑然,對(duì)于通訊錄中的一些生僻的姓都是返回NULL的武花,體驗(yàn)極差。于是在composer庫(kù)中找到了基于詞庫(kù)的中文轉(zhuǎn)拼音優(yōu)質(zhì)解決方案婶恼,同時(shí)附上一位大神的使用手冊(cè)更準(zhǔn)確的 PHP 漢字轉(zhuǎn)拼音解決方案稚配,于是上一個(gè)接口也就變成下面的
<?php
/**
 * 
 * @authors ZL 
 * @email 987968469@qq.com
 * @date    2017-12-14 11:23:35
 */
namespace app\contact\model;

use think\Model;
use think\Db;
use contact\Contact as ContactName;
use Overtrue\Pinyin\Pinyin;

class Contact extends Model {
    /**
     * 河長(zhǎng)通訊錄
     * @return bool|\think\response\Json
     */   
     public function getContactList(){
        $data = Db::name('admin_user')->alias('au')
            ->join('river_level rl','au.level = rl.id','left')
            ->field(['au.id userId','au.user_name userName','au.mobile','rl.level_name levelName','au.department','au.position','au.department_tel'])
            ->where("au.status",1)
            ->order('CONVERT(au.user_name USING gbk)')
            ->select()
            ;//Dump($data);die;
          //舊方法獲取首字母奶赠,有些字獲取不到
        // $firstName = new ContactName;
          // 小內(nèi)存型
          $pinyin = new Pinyin(); // 默認(rèn)
          // 內(nèi)存型
          // $pinyin = new Pinyin('Overtrue\Pinyin\MemoryFileDictLoader');
          // I/O型
          // $pinyin = new Pinyin('Overtrue\Pinyin\GeneratorFileDictLoader');
        $aaa = $bbb = $ccc = array();
        foreach($data as $k => $v){
               $firstPinYin = $pinyin->name(mb_substr(trim($v['userName']), 0,1));
               $firstCharacter = strtoupper(substr($firstPinYin[0], 0, 1)) ;
            //$firstCharacter = $firstName->_getFirstCharacter($v['userName']);
            if(in_array($firstCharacter,$bbb)){
                array_push($ccc,$v);
                $bbb['contact'] = $ccc;
            }else{
                array_push($aaa,$bbb);
                $bbb['firstPY'] = $firstCharacter;
                $ccc = array();
                array_push($ccc,$v);
                $bbb['contact'] = $ccc;
            }               
        }
        array_push($aaa,$bbb);
        array_shift($aaa);
        return $aaa;        
     }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市药有,隨后出現(xiàn)的幾起案子毅戈,更是在濱河造成了極大的恐慌,老刑警劉巖愤惰,帶你破解...
    沈念sama閱讀 210,835評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件苇经,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡宦言,警方通過(guò)查閱死者的電腦和手機(jī)扇单,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,900評(píng)論 2 383
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)奠旺,“玉大人蜘澜,你說(shuō)我怎么就攤上這事∠炀危” “怎么了鄙信?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,481評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵,是天一觀(guān)的道長(zhǎng)忿晕。 經(jīng)常有香客問(wèn)我装诡,道長(zhǎng),這世上最難降的妖魔是什么践盼? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,303評(píng)論 1 282
  • 正文 為了忘掉前任鸦采,我火速辦了婚禮,結(jié)果婚禮上咕幻,老公的妹妹穿的比我還像新娘渔伯。我一直安慰自己,他們只是感情好肄程,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,375評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布锣吼。 她就那樣靜靜地躺著选浑,像睡著了一般。 火紅的嫁衣襯著肌膚如雪吐限。 梳的紋絲不亂的頭發(fā)上鲜侥,一...
    開(kāi)封第一講書(shū)人閱讀 49,729評(píng)論 1 289
  • 那天褂始,我揣著相機(jī)與錄音诸典,去河邊找鬼。 笑死崎苗,一個(gè)胖子當(dāng)著我的面吹牛狐粱,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播胆数,決...
    沈念sama閱讀 38,877評(píng)論 3 404
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼肌蜻,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了必尼?” 一聲冷哼從身側(cè)響起蒋搜,我...
    開(kāi)封第一講書(shū)人閱讀 37,633評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎判莉,沒(méi)想到半個(gè)月后豆挽,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,088評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡券盅,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,443評(píng)論 2 326
  • 正文 我和宋清朗相戀三年帮哈,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片锰镀。...
    茶點(diǎn)故事閱讀 38,563評(píng)論 1 339
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡娘侍,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出泳炉,到底是詐尸還是另有隱情憾筏,我是刑警寧澤,帶...
    沈念sama閱讀 34,251評(píng)論 4 328
  • 正文 年R本政府宣布花鹅,位于F島的核電站踩叭,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏翠胰。R本人自食惡果不足惜容贝,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,827評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望之景。 院中可真熱鬧斤富,春花似錦、人聲如沸锻狗。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,712評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至油额,卻和暖如春叠纷,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背潦嘶。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,943評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工涩嚣, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人掂僵。 一個(gè)月前我還...
    沈念sama閱讀 46,240評(píng)論 2 360
  • 正文 我出身青樓航厚,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親锰蓬。 傳聞我的和親對(duì)象是個(gè)殘疾皇子幔睬,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,435評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,724評(píng)論 25 707
  • 1、通過(guò)CocoaPods安裝項(xiàng)目名稱(chēng)項(xiàng)目信息 AFNetworking網(wǎng)絡(luò)請(qǐng)求組件 FMDB本地?cái)?shù)據(jù)庫(kù)組件 SD...
    陽(yáng)明先生_X自主閱讀 15,969評(píng)論 3 119
  • 生病了芹扭,工作十分難受麻顶,晚上回家就躺在床上,12點(diǎn)才睡
    兆之閱讀 56評(píng)論 0 0
  • 體驗(yàn)入:在企業(yè)中如何建立自主成長(zhǎng)系統(tǒng)舱卡,給什么不如給目標(biāo)辅肾、給未來(lái)、給空間灼狰,我的地盤(pán)我做主宛瞄、我的事情我來(lái)做、我的責(zé)任我...
    熊毅濱1349閱讀 121評(píng)論 0 0
  • 上進(jìn)而又沒(méi)有野心的男生真的很難得 見(jiàn)過(guò)很多不上進(jìn)的男孩子交胚,做朋友其樂(lè)融融但若是作為另一半考慮的話(huà)大概時(shí)間久了我會(huì)有...
    小十八碎碎念閱讀 166評(píng)論 1 0