365bet亚洲版登录-bet官网365入口

365bet亚洲版登录拥有超过百间客房,bet官网365入口的文化历经几十年的传承和积淀形成的核心内容获得业界广泛的认可,365bet亚洲版登录是目前信誉最高的娱乐场所,同国内外几百家网上内容供应商建立了合作关系。

php获取汉字首字母的函数_php实例_脚本之家

网络的点子有不菲,都以平等的准则,遵照必要,做了意气风发晃版本的class类文件,首要成效是:效率显明,易于改进维护和扩大; 土耳其语的字串:不改变回来;中文字符串:再次回到拼音首字符; 中国和英国混合串: 重临拼音首字符和罗马尼亚(罗曼ia卡塔尔国语。该算法采取了二分法查找,修复了事先字母Z读取成Y的荒谬。好东西要收藏,故在那留下印记,以供后人考证!复制代码 代码如下: abc123* 汉语字符串:重临拼音首字符 eg. 测量试验字符串 => CSZFC* 中国和英国混合串: 重返拼音首字符和葡萄牙语 eg. 小编i笔者j => WIWJ* eg.* $py = new str2PY();* $result = $py->getInitials('呀吧才的饿飞就好i就看了呢你哦平去人是她uv我想后生可畏在');*/class str2PY{ private $_pinyins = array( 176161 => 'A', 176197 => 'B', 178193 => 'C', 180238 => 'D', 182234 => 'E', 183162 => 'F', 184193 => 'G', 185254 => 'H', 187247 => 'J', 191166 => 'K', 192172 => 'L', 194232 => 'M', 196195 => 'N', 197182 => 'O', 197190 => 'P', 198218 => 'Q', 200187 => 'R', 200246 => 'S', 203250 => 'T', 205218 => 'W', 206244 => 'X', 209185 => 'Y', 212209 => 'Z', ); private $_charset = null; /** * 构造函数, 钦点要求的编码 default: utf-8 * 支持utf-8, gb2312 * * @param unknown_type $charset */ public function __construct { $this->_charset = $charset; } /** * 普通话字符串 substr * * @param string $str * @param int $start * @param int $len * @return string */ private function _msubstr { $start = $start * 2; $len = $len * 2; $strlen = strlen; $result = ''; for ( $i = 0; $i < $strlen; $i++ ) { if ( $i >= $start && $i < { if ( ord > 129 ) $result .= substr; else $result .= substr; } if ( ord > 129 ) $i++; } return $result; } /** * 字符串切分为数组 * * @param string $str * @return array */ private function _cutWord { $words = array(); while { if ( $this->_isAscii {/*非中文*/ $words[] = $str[0]; $str = substr( $str, strlen; }else{ $word = $this->_msubstr; $words[] = $word; $str = substr ); } } return $words; } /** * 判断字符是不是是ascii字符 * * @param string $char * @return bool */ private function _isAscii { return ( ord < 160 ); } /** * 推断字符串前3个字符是还是不是是ascii字符 * * @param string $str * @return bool */ private function _isAsciis { $len = strlen >= 3 ? 3: 2; $chars = array(); for( $i = 1; $i < $len -1; $i++ ){ $chars[] = $this->_isAscii ? 'yes':'no'; } $result = array_count_values; if ){ return true; } return false; } /** * 获取普通话字串的拼音首字符 * * @param string $str * @return string */ public function getInitials { if return ''; if ( $this->_isAscii && $this->_isAsciis{ return $str; } $result = array(); if ( $this->_charset == 'utf-8' ){ $str = iconv( 'utf-8', 'gb2312', $str ); } $words = $this->_cutWord; foreach { if ( $this->_isAscii {/*非中文*/ $result[] = $word; continue; } $code = ord * 1000 + ord; /*得到拼音首字母A--Z*/ if ( ($i = $this->_search{ $result[] = $this->_pinyins[$i]; } } return strtoupper; } private function _getChar { if ( $ascii >= 48 && $ascii <= 57){ return chr; /*数字*/ }elseif ( $ascii>=65 && $ascii<=90 ){ return chr; /* A--Z*/ }elseif ($ascii>=97 && $ascii<=122){ return chr; /* a--z*/ }else{ return '-'; /*其他*/ } }

/** * 查找要求的汉字内码 对应的拼音字符 * * @param int $code * @return int */ private function _search { $data = array_keys; $lower = 0; $upper = sizeof-1;$middle = round / 2); if return -1; for { if { return $data[$lower-1]; } $tmp = round / 2); if ){return $data[$middle]; }else{ $middle = $tmp;} if ( $data[$middle] < $code ){ $lower = $middle + 1; }else if ( $data[$middle] == $code ) { return $data[$middle]; }else{ $upper = $middle - 1; } } }}?>

本文由365bet亚洲版登录发布于计算机网络,转载请注明出处:php获取汉字首字母的函数_php实例_脚本之家

您可能还会对下面的文章感兴趣: