利用PHP获取汉字首字母并且分组排序详解
前言本文主要给大家介绍了关于PHP获取汉字首字母并分组排序的相关内容,因经常我们在做项目的时候,会有按首字母排序的需求 比如: 美团的城市选择 app中按字母搜索 正题网上找了各种,不尽人意,于是,自己就写了一个,分享给大家。 /**
/**
/**
$s1 = iconv('UTF-8','gb2312',$str); if ($asc >= -20283 && $asc <= -19776) { if ($asc >= -19775 && $asc <= -19219) { if ($asc >= -19218 && $asc <= -18711) { if ($asc >= -18710 && $asc <= -18527) { if ($asc >= -18526 && $asc <= -18240) { if ($asc >= -18239 && $asc <= -17923) { if ($asc >= -17922 && $asc <= -17418) { if ($asc >= -17417 && $asc <= -16475) { if ($asc >= -16474 && $asc <= -16213) { if ($asc >= -16212 && $asc <= -15641) { if ($asc >= -15640 && $asc <= -15166) { if ($asc >= -15165 && $asc <= -14923) { if ($asc >= -14922 && $asc <= -14915) { if ($asc >= -14914 && $asc <= -14631) { if ($asc >= -14630 && $asc <= -14150) { if ($asc >= -14149 && $asc <= -14091) { if ($asc >= -14090 && $asc <= -13319) { if ($asc >= -13318 && $asc <= -12839) { if ($asc >= -12838 && $asc <= -12557) { if ($asc >= -12556 && $asc <= -11848) { if ($asc >= -11847 && $asc <= -11056) { if ($asc >= -11055 && $asc <= -10247) { return null; } 项目中直接引入即可,如果需要命名空间,可以自行添加,下面是我们看看怎么用。 1,'area_name' => '山东'],['id' => 2,'area_name' => '江苏'],['id' => 3,'area_name' => '安徽'],['id' => 4,'area_name' => '福建'],['id' => 5,'area_name' => '江西'],['id' => 6,'area_name' => '广东'],['id' => 7,'area_name' => '广西'],['id' => 8,'area_name' => '海南'],['id' => 9,'area_name' => '河南'],['id' => 10,'area_name' => '湖南'],['id' => 11,'area_name' => '湖北'],]; // 初始化,然后调用分组方法 $data = (new Character)->groupByInitials($data,'area_name');下面的结果是不是你想要的呢,不论是做app还是网页,都可以用 array( 0 => array( 'id' => 3,'area_name' => '安徽','initials' => 'A' ) ),'F' => array( 0 => array( 'id' => 4,'area_name' => '福建','initials' => 'F' ) ),'G' => array( 0 => array( 'id' => 6,'area_name' => '广东','initials' => 'G' ),1 => array( 'id' => 7,'area_name' => '广西','initials' => 'G' ) ),'H' => array( 0 => array( 'id' => 8,'area_name' => '海南','initials' => 'H' ),1 => array( 'id' => 9,'area_name' => '河南',2 => array( 'id' => 10,'area_name' => '湖南',3 => array( 'id' => 11,'area_name' => '湖北','initials' => 'H' ) ),'J' => array( 0 => array( 'id' => 2,'area_name' => '江苏','initials' => 'J' ),1 => array( 'id' => 5,'area_name' => '江西','initials' => 'J' ) ),'S' => array( 0 => array( 'id' => 1,'area_name' => '山东','initials' => 'S' ) ) );总结以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对编程之家的支持。 (编辑:天瑞地安资讯网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |