请问一下这个数组的键值是汉字,如何按汉字的长短排序? [ 2.0 版本 ]
Array
(
[ERP] => https://www.kuajingyan.com/
[Google] => http://www.kuajingyan.com
[PREG_OFFSET_CAPTURE] => http://www.kuajingyan.com
[Wish] => https://www.kuajingyan.com/
[eBay] => http://www.kuajingyan.com
[review] => https://fw.kuajingyan.com/warehouse
[亚马逊] => https://www.kuajingyan.com/
[亚马逊无货源模式] => http://www.kuajingyan.com
[卖家] => https://www.kuajingyan.com
[易仓] => https://www.kuajingyan.com/
[易仓科技] => https://www.kuajingyan.com/
[电子商务] => https://www.kuajingyan.com/
[跨境电商] => https://www.kuajingyan.com/
)
最佳答案
-
用uksort
function mySort($a, $b) { // echo sprintf('$a=%s, $b=%s', $a, $b); if (mb_strlen($a) < mb_strlen($b)) { // > 为升序, < 为降序 return 1; } return 0; } uksort($arr, 'mySort'); print_r($arr);
或者使用回调也可以
uksort($arr, function ($a, $b) { if (mb_strlen($a) < mb_strlen($b)) { return 1; } return 0; });
uksort的使用方法 http://www.w3school.com.cn/php/func_array_uksort.asp
其他 1 个回答
PHP学院的中学生
注册时间:2018-10-23
最后登录:2025-03-24
在线时长:168小时46分
最后登录:2025-03-24
在线时长:168小时46分
- 粉丝29
- 金钱4730
- 威望30
- 积分6710