获取汉字的第一个字母

function getFirstChar($string) {
        $firstCharOrd = ord(strtoupper($string{0}));
        if (($firstCharOrd >= 65 && $firstCharOrd <= 91) || ($firstCharOrd >= 48 && $firstCharOrd <= 57))
            return strtoupper($string{0});
        $s = iconv("UTF-8","gb2312", $string);
        $asc = ord($s{0}) * 256 + ord($s{1}) - 65536;
        if($asc >=- 20319 && $asc <=- 20284)
            return "A";
        if($asc >=- 20283 && $asc <=- 19776)
            return "B";
        if($asc >=- 19775 && $asc <=- 19219)
            return "C";
        if($asc >=- 19218 && $asc <=- 18711)
            return "D";
        if($asc >=- 18710 && $asc <=- 18527)
            return "E";
        if($asc >=- 18526 && $asc <=- 18240)
            return "F";
        if($asc >=- 18239 && $asc <=- 17923)
            return "G";
        if($asc >=- 17922 && $asc <=- 17418)
            return "H";
        if($asc >=- 17417 && $asc <=- 16475)
            return "J";
        if($asc >=- 16474 && $asc <=- 16213)
            return "K";
        if($asc >=- 16212 && $asc <=- 15641)
            return "L";
        if($asc >=- 15640 && $asc <=- 15166)
            return "M";
        if($asc >=- 15165 && $asc <=- 14923)
            return "N";
        if($asc >=- 14922 && $asc <=- 14915)
            return "O";
        if($asc >=- 14914 && $asc <=- 14631)
            return "P";
        if($asc >=- 14630 && $asc <=- 14150)
            return "Q";
        if($asc >=- 14149 && $asc <=- 14091)
            return "R";
        if($asc >=- 14090 && $asc <=- 13319)
            return "S";
        if($asc >=- 13318 && $asc <=- 12839)
            return "T";
        if($asc >=- 12838 && $asc <=- 12557)
            return "W";
        if($asc >=- 12556 && $asc <=- 11848)
            return "X";
        if($asc >=- 11847 && $asc <=- 11056)
            return "Y";
        if($asc >=- 11055 && $asc <=- 10247)
            return "Z";
        return null;
    }

  

原文地址:https://www.cnblogs.com/whlives/p/5737157.html