php將名字按首字母進行排序,具體代碼如下所示:
?phphtml' target='_blank'>public function getFirstChar($s){$s0 = mb_substr($s,0,3); //獲取名字的姓$s = iconv( UTF-8 , gb2312 , $s0); //將UTF-8轉換成GB2312編碼//dump($s0);if (ord($s0) 128) { //漢字開頭,漢字沒有以U、V開頭的$asc=ord($s{0})*256+ord($s{1})-65536;if($asc =-20319 and $asc =-20284)return A if($asc =-20283 and $asc =-19776)return B if($asc =-19775 and $asc =-19219)return C if($asc =-19218 and $asc =-18711)return D if($asc =-18710 and $asc =-18527)return E if($asc =-18526 and $asc =-18240)return F if($asc =-18239 and $asc =-17760)return G if($asc =-17759 and $asc =-17248)return H if($asc =-17247 and $asc =-17418)return I if($asc =-17417 and $asc =-16475)return J if($asc =-16474 and $asc =-16213)return K if($asc =-16212 and $asc =-15641)return L if($asc =-15640 and $asc =-15166)return M if($asc =-15165 and $asc =-14923)return N if($asc =-14922 and $asc =-14915)return O if($asc =-14914 and $asc =-14631)return P if($asc =-14630 and $asc =-14150)return Q if($asc =-14149 and $asc =-14091)return R if($asc =-14090 and $asc =-13319)return S if($asc =-13318 and $asc =-12839)return T if($asc =-12838 and $asc =-12557)return W if($asc =-12556 and $asc =-11848)return X if($asc =-11847 and $asc =-11056)return Y if($asc =-11055 and $asc =-10247)return Z }else if(ord($s) =48 and ord($s) =57){ //數字開頭switch(iconv_substr($s,0,1, utf-8 )){case 1:return Y case 2:return E case 3:return S case 4:return S case 5:return W case 6:return L case 7:return Q case 8:return B case 9:return J case 0:return L }else if(ord($s) =65 and ord($s) =90){ //大寫英文開頭return substr($s,0,1);}else if(ord($s) =97 and ord($s) =122){ //小寫英文開頭return strtoupper(substr($s,0,1));return iconv_substr($s0,0,1, utf-8 //中英混合的詞語,不適合上面的各種情況,因此直接提取首個字符即可public function addPeople()$userName = array( 張三 , 馬大帥 , 李四 , 王五 , 小二 , 貓蛋 , 狗蛋 , 王花 , 三毛 , 小明 , 李剛 , 張飛 sort($userName);foreach($userName as $name){$char = $this- getFirstChar($name);$nameArray = array();if(count($charArray[$char])!=0){$nameArray = $charArray[$char];array_push($nameArray,$name);$charArray[$char] = $nameArray;ksort($charArray);$this- assign( _list ,$charArray);}
頁面顯示
foreach name= _list item= vo key= k p {$k} /p foreach name= vo item= l span >總結
以上所述是小編給大家介紹的php實現姓名根據首字母排序的類與方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對php 的支持!
您可能感興趣的文章:PHP實現多圖上傳和單圖上傳功能php實例
PHP手機短信驗證碼實現流程詳解php實例
php通過各種函數判斷0和空php實例
以上就是php實現姓名根據首字母排序的類與方法(實例代碼)php實例的詳細內容,PHP教程
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。
新聞熱點
疑難解答