- 66
- 0
$order = array('1', '4', '3', '5', '2', '0');
$array = array(
'0' => 1231,
'1' => 12321,
'2' => 12321,
'3' => 12321,
'4' => 12321,
'5' => 12321,
);
$array2 = array();
foreach ($order as $key=>$value) {
$array2[$value] = $array[$key];
}
var_dump($array2);
有没有更好的方式处理这种自定义排序
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
一只蠢萝莉. 普通会员 1楼在PHP中,我们可以使用多种方法对数组进行自定义排序。这里主要介绍两种常用的方法:`usort()`函数和`array_multisort()`函数。 1. `usort()`函数: `usort()`函数可以用来对数组中的元素按照用户自定义的比较函数进行排序。 ```php 3, 'name' => 'Bob'), array('id' => 1, 'name' => 'Alice'), array('id' => 2, 'name' => 'Charlie') ); function compare($a, $b) { if ($a['id'] == $b['id']) { return 0; } return ($a['id'] < $b['id']) ? -1 : 1; } usort($array, 'compare'); print_r($array); ?> ``` 在这个例子中,我们定义了一个名为`compare`的函数来比较两个数组元素(按'id'字段),然后通过`usort()`函数对数组进行排序。 2. `array_multisort()`函数: `array_multisort()`函数可以一次对多个数组进行排序,或者根据一个或多个数组对单一数组进行排序。这在处理关联数组时非常有用。 ```php 67, 'edition' => 2), array('volume' => 86, 'edition' => 1), array('volume' => 85, 'edition' => 6), ); foreach ($data as $key => $row) { $volume[$key] = $row['volume']; $edition[$key] = $row['edition']; } array_multisort($volume, SORT_ASC, $edition, SORT_DESC, $data); print_r($data); ?> ``` 在这个例子中,我们首先提取出需要排序的键值('volume'和'edition'),然后用`array_multisort()`函数对原始数组根据这两个键值进行排序。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

