我有这个数组:$array = array( ['name' => 'Indor Swimming Pool'], ['name' => 'abracadabra'],);我想按字母顺序排序,所以我做了:usort($array, function($a, $b){ return strcmp($a['name'], $b['name']);});但是当我转储它时:var_dump($array);我得到:array(2) { [0]=> array(1) { ["name"]=> string(19) "Indor Swimming Pool" } [1]=> array(1) { ["name"]=> string(11) "abracadabra" }}这是不正确的,abracadabra应该先
2 回答
海绵宝宝撒
TA贡献1809条经验 获得超8个赞
根据 ASCII 表 chr I在前,然后是a chr
ASCII 表
所以在这里你的数组实际上是按字母顺序排序以获得所需的结果你需要按降序对数组进行排序
<?php
$data = array(
['name' => 'Indor Swimming Pool'],
['name' => 'abracadabra'],
);
arsort($data);
?>
输出
Array
(
[1] => Array
(
[name] => abracadabra
)
[0] => Array
(
[name] => Indor Swimming Pool
)
)
- 2 回答
- 0 关注
- 102 浏览
添加回答
举报
0/150
提交
取消