/**
* 获取中文首字母(中英文会返回对应的首字母,数字直接返回,若是负数,转正数返回)
* @param $str
* @param $type true|返回大写字母 false|返回小写字母
* @return string|null
*/
function getFirstCharter($str,$type=true){
if(empty($str)) {
return '';
}
if(trim($str)==''){
return '';
}
if(is_numeric($str)){
return abs($str);
}
//如果不是中文 不是英文 也不是数字 直接返回 空值
if(!preg_match("/^[\x7f-\xff]+$/", $str) && !preg_match("/^[A-Za-z]+$/",$str) && !is_numeric($str)){
return '';
}
$fchar=ord($str{0});
if($fchar>=ord('A')&&$fchar<=ord('z')) return strtoupper($str{0});
$s1=iconv('UTF-8','gb2312',$str);
$s2=iconv('gb2312','UTF-8',$s1);
$s=$s2==$str?$s1:$str;
$asc = ord($s{0})*256 + ord($s{1})-65536;
$str = '';
if($asc>=-20319&&$asc<=-20284){
$str = "A";
}
if($asc>=-20283&&$asc<=-19776 || $asc==-9743){
$str = "B";
}
if($asc>=-19775&&$asc<=-19219){
$str = "C";
}
if($asc>=-19218&&$asc<=-18711 || $asc==-9767){
$str = "D";
}
if($asc>=-18710&&$asc<=-18527){
$str = "E";
}
if($asc>=-18526&&$asc<=-18240){
$str = "F";
}
if($asc>=-18239&&$asc<=-17923){
$str = "G";
}
if($asc>=-17922&&$asc<=-17418){
$str = "H";
}
if($asc>=-17417&&$asc<=-16475){
$str = 'J';
}
if($asc>=-16474&&$asc<=-16213){
$str = 'K';
}
if($asc>=-16212&&$asc<=-15641 || $asc==-7182 || $asc==-6928 ){
$str = 'L';
}
if($asc>=-15640&&$asc<=-15166){
$str = 'M';
}
if($asc>=-15165&&$asc<=-14923){
return 'N';
}
if($asc>=-14922&&$asc<=-14915){
return 'O';
}
if($asc>=-14914&&$asc<=-14631 || $asc==-6745){
return 'P';
}
if($asc>=-14630&&$asc<=-14150 || $asc==-7703){
return 'Q';
}
if($asc>=-14149&&$asc<=-14091){
return 'R';
}
if($asc>=-14090&&$asc<=-13319){
return 'S';
}
if($asc>=-13318&&$asc<=-12839){
return 'T';
}
if($asc>=-12838&&$asc<=-12557){
return 'W';
}
if($asc>=-12556&&$asc<=-11848){
return 'X';
}
if($asc>=-11847&&$asc<=-11056){
return 'Y';
}
if($asc>=-11055&&$asc<=-10247){
return 'Z';
}
if($type){
return $str;
}else{
return strtolower($str);
}
}
获取中文首字母
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...