• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧
您的位置:首页 > CMS教程 >建站教程 > PHP实现姓名根据首字母排序的类与方法(实例代码)

PHP实现姓名根据首字母排序的类与方法(实例代码)

作者:站长图库 字体:[增加 减小] 来源:互联网 时间:2022-04-29

站长图库向大家介绍了PHP排序,姓名首字母排序,PHP类与方法,PHP实例代码等相关知识,希望对您有所帮助

这篇文章主要介绍了php实现姓名根据首字母排序的类与方法,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧。

php将名字按首字母进行排序,具体代码如下所示:

<?php public function getFirstChar($s){     $s0 = mb_substr($s,0,3); //获取名字的姓     $s = iconv('UTF-8','gb2312', $s0); //将UTF-8转换成GB2312编码     //dump($s0);     if (ord($s0)>128) {         //汉字开头,汉字没有以U、V开头的         $asc=ord($s{0})*256+ord($s{1})-65536;         if($asc>=-20319 and $asc<=-20284)return "A";         if($asc>=-20283 and $asc<=-19776)return "B";         if($asc>=-19775 and $asc<=-19219)return "C";         if($asc>=-19218 and $asc<=-18711)return "D";         if($asc>=-18710 and $asc<=-18527)return "E";         if($asc>=-18526 and $asc<=-18240)return "F";         if($asc>=-18239 and $asc<=-17760)return "G";         if($asc>=-17759 and $asc<=-17248)return "H";         if($asc>=-17247 and $asc<=-17418)return "I";         if($asc>=-17417 and $asc<=-16475)return "J";         if($asc>=-16474 and $asc<=-16213)return "K";         if($asc>=-16212 and $asc<=-15641)return "L";         if($asc>=-15640 and $asc<=-15166)return "M";         if($asc>=-15165 and $asc<=-14923)return "N";         if($asc>=-14922 and $asc<=-14915)return "O";         if($asc>=-14914 and $asc<=-14631)return "P";         if($asc>=-14630 and $asc<=-14150)return "Q";         if($asc>=-14149 and $asc<=-14091)return "R";         if($asc>=-14090 and $asc<=-13319)return "S";         if($asc>=-13318 and $asc<=-12839)return "T";         if($asc>=-12838 and $asc<=-12557)return "W";         if($asc>=-12556 and $asc<=-11848)return "X";         if($asc>=-11847 and $asc<=-11056)return "Y";         if($asc>=-11055 and $asc<=-10247)return "Z";     } else if(ord($s)>=48 and ord($s)<=57) {         //数字开头         switch(iconv_substr($s,0,1,'utf-8')){             case 1:return "Y";             case 2:return "E";             case 3:return "S";             case 4:return "S";             case 5:return "W";             case 6:return "L";             case 7:return "Q";             case 8:return "B";             case 9:return "J";             case 0:return "L";         }     } else if(ord($s)>=65 and ord($s)<=90) { //大写英文开头         return substr($s,0,1);     } else if(ord($s)>=97 and ord($s)<=122) { //小写英文开头         return strtoupper(substr($s,0,1));     } else {         return iconv_substr($s0,0,1,'utf-8');         //中英混合的词语,不适合上面的各种情况,因此直接提取首个字符即可     } } public function addPeople() {     $userName = array('张三','马大帅','李四','王五','小二','猫蛋','狗蛋','王花','三毛','小明','李刚','张飞');     sort($userName);     foreach($userName as $name){         $char = $this->getFirstChar($name);         $nameArray = array();         if(count($charArray[$char])!=0){             $nameArray = $charArray[$char];         }         array_push($nameArray,$name);         $charArray[$char] = $nameArray;     }     ksort($charArray);     $this->assign('_list',$charArray); }

页面显示

<foreach name="_list" item="vo" key="k">     <p>{$k}</p>     <foreach name="vo" item="l">         <span class="name">{$l}</span>     </foreach> </foreach>


分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • PHP实现姓名根据首字母排序的类与方法(实例代码)

相关文章

  • 2022-04-29JavaScript的math方法有哪些
  • 2022-04-29快速理解 JavaScript 的垃圾回收
  • 2022-04-29PHP工厂方法模式的好处是什么
  • 2022-04-29PHP如何实现禁止浏览器缓存
  • 2022-04-29Photoshop简单方法制作时尚的艺术字教程
  • 2022-04-29Photoshop制作液化效果的火焰艺术字教程
  • 2022-04-29手机访问PC网站自动跳转到手机网站代码
  • 2022-04-29Laravel如何使用Observer实现日志管理模块
  • 2022-04-29手把手教你CSS如何实现毛玻璃效果
  • 2022-04-29Photoshop制作破碎玻璃字体效果教程

文章分类

  • dedecms
  • ecshop
  • z-blog
  • UcHome
  • UCenter
  • drupal
  • WordPress
  • 帝国cms
  • phpcms
  • 动易cms
  • phpwind
  • discuz
  • 科汛cms
  • 风讯cms
  • 建站教程
  • 运营技巧

最近更新的内容

    • Javascript怎么移除数组元素
    • Laravel中三种中间件的作用
    • 你知道Golang怎么封装PHP常用函数吗!
    • 如何使用yum安装指定版本的php
    • 改用Server酱Turbo版推送WordPress评论
    • PHP开发微信授权登录教程
    • Photoshop快速制作漂亮的花朵浮雕字
    • Photoshop制作冒气泡的透明艺术字教程
    • 小程序开发实践之浅析如何获取手机号码
    • ThinkPHP5验证码图片如何生成

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有