php 中文字符串首字母的获取函数分享

代码如下:

function chineseFirst($str)
{

$str= iconv("UTF-8","gb2312", $str);    //如果程序是gbk的,此行就要注释掉

//判断字符串是否全都是中文
    if (preg_match("/^[\x7f-\xff]/", $str))
    {
        $fchar=ord($str{0});  
        if($fchar>=ord("A") and $fchar<=ord("z") )return strtoupper($str{0});
        $a = $str;
        $val=ord($a{0})*256+ord($a{1})-65536;
        if($val>=-20319 and $val<=-20284)return "A";  
        if($val>=-20283 and $val<=-19776)return "B";  
        if($val>=-19775 and $val<=-19219)return "C";  
        if($val>=-19218 and $val<=-18711)return "D";  
        if($val>=-18710 and $val<=-18527)return "E";  
        if($val>=-18526 and $val<=-18240)return "F";  
        if($val>=-18239 and $val<=-17923)return "G";  
        if($val>=-17922 and $val<=-17418)return "H";
        if($val>=-17417 and $val<=-16475)return "J";                
        if($val>=-16474 and $val<=-16213)return "K";                
        if($val>=-16212 and $val<=-15641)return "L";                
        if($val>=-15640 and $val<=-15166)return "M";                
        if($val>=-15165 and $val<=-14923)return "N";                
        if($val>=-14922 and $val<=-14915)return "O";                
        if($val>=-14914 and $val<=-14631)return "P";                
        if($val>=-14630 and $val<=-14150)return "Q";                
        if($val>=-14149 and $val<=-14091)return "R";                
        if($val>=-14090 and $val<=-13319)return "S";                
        if($val>=-13318 and $val<=-12839)return "T";                
        if($val>=-12838 and $val<=-12557)return "W";                
        if($val>=-12556 and $val<=-11848)return "X";                
        if($val>=-11847 and $val<=-11056)return "Y";                
        if($val>=-11055 and $val<=-10247)return "Z";
    } else
    {
        return false;
    }

}

(0)

相关推荐

  • PHP针对字符串开头和结尾的判断方法

    本文实例讲述了PHP针对字符串开头和结尾的判断方法.分享给大家供大家参考,具体如下: //变量: $s1 = "dotcoo world!"; $s2 = "dotcoo"; $s3 = "hello dotcoo"; //php判断字符串开头: var_dump(substr($s1, 0, strlen($s2)) === $s2); var_dump(strpos($s1, $s2) === 0); var_dump(strncmp($s1

  • php判断数组元素中是否存在某个字符串的方法

    方法一:采用in_array(value,array,type) type 可选.如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同. 复制代码 代码如下: $arr = array('可以','如何','方法','知道','沒有','不要');//in_array(value,array,type)$isin = in_array("如何2",$arr);if($isin){    echo "in====".$isin;}else{    ec

  • php判断字符以及字符串的包含方法属性

    下面介绍使用方法: 1. strstr: 返回一个从被判断字符开始到结束的字符串,如果没有返回值,则不包含 复制代码 代码如下: <?php /*如手册上的举例*/ $email = 'user@example.com'; $domain = strstr($email, '@'); echo $domain; // prints @example.com ?> 2. stristr: 它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写. 3. strpos: 返回bo

  • php实现字符串首字母转换成大写的方法

    本文实例讲述了php实现字符串首字母转换成大写的方法.分享给大家供大家参考.具体分析如下: php中可以通过ucfirst函数将一个字符串中的第一个字母转换成大写,而ucwords函数可以将一个字符串中每个单词的首字母转换成大写 <?php $string = "php string functions are easy to use."; $sentence = ucfirst($string); $title = ucwords($string); print("$

  • php中判断字符串是否全是中文或含有中文的实现代码

    一,判断全是中文 复制代码 代码如下: $str="'324是"; if(!eregi("[^\x80-\xff]","$str")){ echo "全是中文"; }else{ echo "不是"; } 二,判断含有中文 复制代码 代码如下: $str = "中文"; if (preg_match("/[\x7f-\xff]/", $str)) { echo &quo

  • php读取文件内容至字符串中,同时去除换行、空行、行首行尾空格(Zjmainstay原创)

    复制代码 代码如下: <?php /* *读取文件内容至字符串中,同时去除换行.行首行尾空格. */ header("Content-type: text/html; charset=utf-8"); echo preg_replace('/((\s)*(\n)+(\s)*)/i',',',file_get_contents('./file.php'));//End_php //输出: aaaa,bbbb,cccc,dddd,eeee,ffff,gggg,hhhh,iiii,jj

  • php取得字符串首字母的方法

    本文实例讲述了php取得字符串首字母的方法.分享给大家供大家参考.具体实现方法如下: <?php $limit = array( //gb2312 拼音排序 array(45217,45252), //A array(45253,45760), //B array(45761,46317), //C array(46318,46825), //D array(46826,47009), //E array(47010,47296), //F array(47297,47613), //G arr

  • php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)

    今天在处理删除字符串两端的特定字符时遇到了下面的问题,先看例子<SPAN style="FONT-SIZE: 18px"></SPAN>  $str = 'akmumu/writedb.json';  我要做的是删除开始的akmumu,再删除末尾的.json,这样只保留有用的字符/writedb开始我使用的ltrim删除akmumu,再使用rtrim删除.json结果发现我理解trim错误了,trim的参数如下rtrim(string,charlist)他的参数

  • PHP中去掉字符串首尾空格的方法

    第一种方法:通过php自带的函数 <?php /* trim 去除一个字符串两端空格, rtrim 是去除一个字符串右部空格, ltrim 是去除一个字符串左部空格. */ ?> <?php echo trim(" 空格 ")."<br>"; echo rtrim(" 空格 ")."<br>"; echo ltrim(" 空格 ")."<br>

  • php简单判断两个字符串是否相等的方法

    本文实例讲述了php简单判断两个字符串是否相等的方法.分享给大家供大家参考.具体实现方法如下: <?php function strcomp($str1,$str2){ if($str1 == $str2){ return TRUE; }else{ return FALSE; } } echo strcomp("First string","Second string"); //Returns FALSE echo strcomp("A string

随机推荐