PHP提取中文首字母

 更新时间:2008年04月09日 12:15:44   作者:  
从别人程序中扒拉出来的提取中文首字母的php代码不是原创。Dzender的代码学习用
复制代码 代码如下:

<?    
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生成指定随机字符串的简单实现方法

    PHP生成指定随机字符串的简单实现方法

    这篇文章主要介绍了PHP生成指定随机字符串的简单实现方法,涉及php操作数组与字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • PHP中file_exists使用中遇到的问题小结

    PHP中file_exists使用中遇到的问题小结

    本文给大家详细描述了作者在使用file_exists中遇到的问题以及分析解决方法的过程,非常的详细,有需要的小伙伴可以参考下。
    2016-04-04
  • PHP脚本设置无限执行时间的四种方法

    PHP脚本设置无限执行时间的四种方法

    为 PHP 脚本设置无限执行时间是一个在特定场景下可能需要的操作,比如执行长时间运行的后台任务、数据迁移、大批量数据处理等,本文给大家介绍了为PHP脚本设置无限执行时间的四种方法,需要的朋友可以参考下
    2024-09-09
  • php+mysql分页代码详解

    php+mysql分页代码详解

    php+mysql分页代码 学习php必须要掌握的基础,对于会asp的朋友上手就快多了
    2008-03-03
  • php类的自动加载操作实例详解

    php类的自动加载操作实例详解

    这篇文章主要介绍了php类的自动加载操作,结合实例形式详细分析了php类的自动加载操作相关函数与实现技巧,需要的朋友可以参考下
    2016-09-09
  • PHP使用curl_multi实现并发请求的方法示例

    PHP使用curl_multi实现并发请求的方法示例

    这篇文章主要介绍了PHP使用curl_multi实现并发请求的方法,结合实例形式分析了php封装curl_multi实现的并发请求相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • PHP中绘制图像的一些函数总结

    PHP中绘制图像的一些函数总结

    这篇文章主要介绍了PHP中绘制图像的一些函数总结,本文讲解了如绘制点和线、绘制矩形、绘制多边形、绘制椭圆、绘制弧线等功能,需要的朋友可以参考下
    2014-11-11
  • 简单谈谈PHP中的trait

    简单谈谈PHP中的trait

    自PHP5.4.0起,PHP实现了一种代码复用的方法,称为Trait。因为PHP是单继承,当你需要多个区别的特性,就不得不去组合多个基类,Trait出现后就避免了这些问题,Trait的优势就是可以随意组合,而且代码清晰。本文主要介绍了关于PHP中的trait,需要的朋友可以参考下。
    2017-02-02
  • php foreach正序倒序输出示例代码

    php foreach正序倒序输出示例代码

    这篇文章主要介绍了php中foreach正序输出与倒序输出的例子,php foreach用法实例,需要的朋友可以参考下
    2014-07-07
  • mac下多个php版本快速切换的方法

    mac下多个php版本快速切换的方法

    这篇文章主要给大家介绍了在mac下多个php版本快速切换的方法,本文先是给大家分享了使用brew安装php多版本的方法,而后才介绍了快速切换的实现方法,感兴趣的朋友们下面来一起看看吧。
    2016-10-10

最新评论