PHP提取中文首字母

yipeiwu_com5年前PHP代码库
复制代码 代码如下:

<?    
function pykey( $py_key)    
{    
    $pinyin = 65536 + pys($py_key);    
    if ( 45217 <= $pinyin && $pinyin <= 45252 )    
    {    
        $zimu = "A";    
        return $zimu;    
    }    
    if ( 45253 <= $pinyin && $pinyin <= 45760 )    
    {    
        $zimu = "B";    
        return $zimu;    
    }    
    if ( 45761 <= $pinyin && $pinyin <= 46317 )    
    {    
        $zimu = "C";    
        return $zimu;    
    }    
    if ( 46318 <= $pinyin && $pinyin <= 46825 )    
    {    
        $zimu = "D";    
        return $zimu;    
    }    
    if ( 46826 <= $pinyin && $pinyin <= 47009 )    
    {    
        $zimu = "E";    
        return $zimu;    
    }    
    if ( 47010 <= $pinyin && $pinyin <= 47296 )    
    {    
        $zimu = "F";    
        return $zimu;    
    }    
    if ( 47297 <= $pinyin && $pinyin <= 47613 )    
    {    
        $zimu = "G";    
        return $zimu;    
    }    
    if ( 47614 <= $pinyin && $pinyin <= 48118 )    
    {    
        $zimu = "H";    
        return $zimu;    
    }    
    if ( 48119 <= $pinyin && $pinyin <= 49061 )    
    {    
        $zimu = "J";    
        return $zimu;    
    }    
    if ( 49062 <= $pinyin && $pinyin <= 49323 )    
    {    
        $zimu = "K";    
        return $zimu;    
    }    
    if ( 49324 <= $pinyin && $pinyin <= 49895 )    
    {    
        $zimu = "L";    
        return $zimu;    
    }    
    if ( 49896 <= $pinyin && $pinyin <= 50370 )    
    {    
        $zimu = "M";    
        return $zimu;    
    }    
    if ( 50371 <= $pinyin && $pinyin <= 50613 )    
    {    
        $zimu = "N";    
        return $zimu;    
    }    
    if ( 50614 <= $pinyin && $pinyin <= 50621 )    
    {    
        $zimu = "O";    
        return $zimu;    
    }    
    if ( 50622 <= $pinyin && $pinyin <= 50905 )    
    {    
        $zimu = "P";    
        return $zimu;    
    }    
    if ( 50906 <= $pinyin && $pinyin <= 51386 )    
    {    
        $zimu = "Q";    
        return $zimu;    
    }    
    if ( 51387 <= $pinyin && $pinyin <= 51445 )    
    {    
        $zimu = "R";    
        return $zimu;    
    }    
    if ( 51446 <= $pinyin && $pinyin <= 52217 )    
    {    
        $zimu = "S";    
        return $zimu;    
    }    
    if ( 52218 <= $pinyin && $pinyin <= 52697 )    
    {    
        $zimu = "T";    
        return $zimu;    
    }    
    if ( 52698 <= $pinyin && $pinyin <= 52979 )    
    {    
        $zimu = "W";    
        return $zimu;    
    }    
    if ( 52980 <= $pinyin && $pinyin <= 53640 )    
    {    
        $zimu = "X";    
        return $zimu;    
    }    
    if ( 53689 <= $pinyin && $pinyin <= 54480 )    
    {    
        $zimu = "Y";    
        return $zimu;    
    }    
    if ( 54481 <= $pinyin && $pinyin <= 62289 )    
    {    
        $zimu = "Z";    
        return $zimu;    
    }    
    $zimu = $py_key;    
    return $zimu;    
}    
function pys( $pysa )    
{    
    $pyi = "";    
    $i= 0;    
    for ( ; $i < strlen( $pysa ); $i++)    
    {    
        $_obfuscate_8w= ord( substr( $pysa,$i,1) );    
        if ( 160 < $_obfuscate_8w)    
        {    
            $_obfuscate_Bw = ord( substr( $pysa, $i++, 1 ) );    
            $_obfuscate_8w = $_obfuscate_8w * 256 + $_obfuscate_Bw - 65536;    
        }    
        $pyi.= $_obfuscate_8w;    
    }    
    return $pyi;    
}    
$letter = pykey("中华人民共和国");    
echo $letter;    
?> 

相关文章

php unset全局变量运用问题的深入解析

PHP unset全局变量在实际使用中只能销毁局部变量,并不能实现全局变量的目的。下面我们就来具体解决这一问题。希望对大家有所帮助。PHP中语言中有些函数对于初学者来说在字面上是很难理解...

PHP之十六个魔术方法详细介绍

PHP中把以两个下划线__开头的方法称为魔术方法(Magic methods),这些方法在PHP中充当了举足轻重的作用。 魔术方法包括: __construct(),类的构造函数...

Netbeans 8.2将支持PHP7 更精彩

Netbeans 8.2将支持PHP7 更精彩

首先,将PHP项目的PHP版本设置为PHP 7.0。 PHP 7其中一项新特性是返回类型声明,即PHP的函数和方法可以声明指定类型的返回值: PHP 7的另一项精彩的改进就是参数的...

PHP使用CURL实现下载文件功能示例

本文实例讲述了PHP使用CURL实现下载文件功能。分享给大家供大家参考,具体如下: 如果使用CURL下载从微信手机端上传的图片?参考下面代码 /** * CURL下载文件 成功返回...

ThinkPHP跳转页success及error模板实例教程

本文以实例讲解了ThinkPHP跳转页面的success与error方法所对应的视图与控制器的实现方法,通过本实例教程可以帮助读者更好的掌握success方法与error方法的使用。 首...