ホームページ > php教程 > PHP源码 > 根据汉字取拼音,并附有编码功能

根据汉字取拼音,并附有编码功能

PHP中文网
リリース: 2016-05-25 17:12:50
オリジナル
1169 人が閲覧しました


='5.0')?array_combine($_TDataKey,$_TDataValue):_Array_Combine($_TDataKey,$_TDataValue); 
        arsort($_Data); 
        reset($_Data); 

        if($_Code != 'gb2312') $_String = _U2_Utf8_Gb($_String); 
        $_Res = ''; 
        for($i=0; $i160) { $_Q = ord(substr($_String, ++$i, 1)); $_P = $_P*256 + $_Q - 65536; } 
                $_Res .= _Pinyin($_P, $_Data); 
        } 
        return preg_replace("/[^a-z0-9]*/", '', $_Res); 
} 

function _Pinyin($_Num, $_Data) 
{ 
        if    ($_Num>0      && $_Num<160   ) return chr($_Num); 
        elseif($_Num-10247) return &#39;&#39;; 
        else  { 
                foreach($_Data as $k=>$v){ if($v<=$_Num) break; } 
                return $k; 
        } 
} 

function _U2_Utf8_Gb($_C) 
{ 
        $_String = &#39;&#39;; 
        if($_C < 0x80) $_String .= $_C; 
        elseif($_C < 0x800) 
        { 
                $_String .= chr(0xC0 | $_C>>6); 
                $_String .= chr(0x80 | $_C & 0x3F); 
        }elseif($_C < 0x10000){ 
                $_String .= chr(0xE0 | $_C>>12); 
                $_String .= chr(0x80 | $_C>>6 & 0x3F); 
                $_String .= chr(0x80 | $_C & 0x3F); 
        } elseif($_C < 0x200000) { 
                $_String .= chr(0xF0 | $_C>>18); 
                $_String .= chr(0x80 | $_C>>12 & 0x3F); 
                $_String .= chr(0x80 | $_C>>6 & 0x3F); 
                $_String .= chr(0x80 | $_C & 0x3F); 
        } 
        return iconv(&#39;UTF-8&#39;, &#39;GB2312&#39;, $_String); 
} 

function _Array_Combine($_Arr1, $_Arr2) 
{ 
        for($i=0; $i
ログイン後にコピー

                   

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート