当前位置: 首页 > 2008年2月24日发布的所有文章
  • PHP提取中文首字母

    从别人程序中扒拉出来的不是原创。Dzender的代码学习用

     

    PHP代码
    1. function pykey( $py_key)   
    2. {   
    3.     $pinyin = 65536 + pys($py_key);   
    4.     if ( 45217 <= $pinyin && $pinyin <= 45252 )   
    5.     {   
    6.         $zimu = “A”;   
    7.         return $zimu;   
    8.     }   
    9.     if ( 45253 <= $pinyin && $pinyin <= 45760 )   
    10.     {   
    11.         $zimu = “B”;   
    12.         return $zimu;   
    13.     }   
    14.     if ( 45761 <= $pinyin && $pinyin <= 46317 )   
    15.     {   
    16.         $zimu = “C”;   
    17.         return $zimu;   
    18.     }   
    19.     if ( 46318 <= $pinyin && $pinyin <= 46825 )   
    20.     {   
    21.         $zimu = “D”;   
    22.         return $zimu;   
    23.     }   
    24.     if ( 46826 <= $pinyin && $pinyin <= 47009 )   
    25.     {   
    26.         $zimu = “E”;   
    27.         return $zimu;   
    28.     }   
    29.     if ( 47010 <= $pinyin && $pinyin <= 47296 )   
    30.     {   
    31.         $zimu = “F”;   
    32.         return $zimu;   
    33.     }   
    34.     if ( 47297 <= $pinyin && $pinyin <= 47613 )   
    35.     {   
    36.         $zimu = “G”;   
    37.         return $zimu;   
    38.     }   
    39.     if ( 47614 <= $pinyin && $pinyin <= 48118 )   
    40.     {   
    41.         $zimu = “H”;   
    42.         return $zimu;   
    43.     }   
    44.     if ( 48119 <= $pinyin && $pinyin <= 49061 )   
    45.     {   
    46.         $zimu = “J”;   
    47.         return $zimu;   
    48.     }   
    49.     if ( 49062 <= $pinyin && $pinyin <= 49323 )   
    50.     {   
    51.         $zimu = “K”;   
    52.         return $zimu;   
    53.     }   
    54.     if ( 49324 <= $pinyin && $pinyin <= 49895 )   
    55.     {   
    56.         $zimu = “L”;   
    57.         return $zimu;   
    58.     }   
    59.     if ( 49896 <= $pinyin && $pinyin <= 50370 )   
    60.     {   
    61.         $zimu = “M”;   
    62.         return $zimu;   
    63.     }   
    64.     if ( 50371 <= $pinyin && $pinyin <= 50613 )   
    65.     {   
    66.         $zimu = “N”;   
    67.         return $zimu;   
    68.     }   
    69.     if ( 50614 <= $pinyin && $pinyin <= 50621 )   
    70.     {   
    71.         $zimu = “O”;   
    72.         return $zimu;   
    73.     }   
    74.     if ( 50622 <= $pinyin && $pinyin <= 50905 )   
    75.     {   
    76.         $zimu = “P”;   
    77.         return $zimu;   
    78.     }   
    79.     if ( 50906 <= $pinyin && $pinyin <= 51386 )   
    80.     {   
    81.         $zimu = “Q”;   
    82.         return $zimu;   
    83.     }   
    84.     if ( 51387 <= $pinyin && $pinyin <= 51445 )   
    85.     {   
    86.         $zimu = “R”;   
    87.         return $zimu;   
    88.     }   
    89.     if ( 51446 <= $pinyin && $pinyin <= 52217 )   
    90.     {   
    91.         $zimu = “S”;   
    92.         return $zimu;   
    93.     }   
    94.     if ( 52218 <= $pinyin && $pinyin <= 52697 )   
    95.     {   
    96.         $zimu = “T”;   
    97.         return $zimu;   
    98.     }   
    99.     if ( 52698 <= $pinyin && $pinyin <= 52979 )   
    100.     {   
    101.         $zimu = “W”;   
    102.         return $zimu;   
    103.     }   
    104.     if ( 52980 <= $pinyin && $pinyin <= 53640 )   
    105.     {   
    106.         $zimu = “X”;   
    107.         return $zimu;   
    108.     }   
    109.     if ( 53689 <= $pinyin && $pinyin <= 54480 )   
    110.     {   
    111.         $zimu = “Y”;   
    112.         return $zimu;   
    113.     }   
    114.     if ( 54481 <= $pinyin && $pinyin <= 62289 )   
    115.     {   
    116.         $zimu = “Z”;   
    117.         return $zimu;   
    118.     }   
    119.     $zimu = $py_key;   
    120.     return $zimu;   
    121. }   
    122. function pys( $pysa )   
    123. {   
    124.     $pyi = “”;   
    125.     $i= 0;   
    126.     for ( ; $i < strlen$pysa ); $i++)   
    127.     {   
    128.         $_obfuscate_8w= ord( substr$pysa,$i,1) );   
    129.         if ( 160 < $_obfuscate_8w)   
    130.         {   
    131.             $_obfuscate_Bw = ord( substr$pysa$i++, 1 ) );   
    132.             $_obfuscate_8w = $_obfuscate_8w * 256 + $_obfuscate_Bw – 65536;   
    133.         }   
    134.         $pyi.= $_obfuscate_8w;   
    135.     }   
    136.     return $pyi;   
    137. }   
    138. $letter = pykey(“中华人民共和国”);   
    139. echo $letter;   
    140. ?>  
    ]]>

    键盘游走者 发布于 2008-02-24 19:51php抢沙发