php新手请教一个问题;
原数组结构如下,原数组是按ads_id,time进行排序;
现在的需求是根据二维数组的num总和重新进行排序
<code>Array
(
[5] => Array
(
[0] => Array
(
[num] => 840
[time] => 2015-10
[ads_id] => 5
)
[1] => Array
(
[num] => 684
[time] => 2015-11
[ads_id] => 5
)
)
[6] => Array
(
[0] => Array
(
[num] => 23
[time] => 2015-10
[ads_id] => 6
)
[1] => Array
(
[num] => 37
[time] => 2015-11
[ads_id] => 6
)
)
[7] => Array
(
[0] => Array
(
[num] => 280
[time] => 2015-10
[ads_id] => 7
)
[1] => Array
(
[num] => 343
[time] => 2015-11
[ads_id] => 7
)
)
)
</code>最终实现排序如下:
PHP经典实例(第2版)能够为您节省宝贵的Web开发时间。有了这些针对真实问题的解决方案放在手边,大多数编程难题都会迎刃而解。《PHP经典实例(第2版)》将PHP的特性与经典实例丛书的独特形式组合到一起,足以帮您成功地构建跨浏览器的Web应用程序。在这个修订版中,您可以更加方便地找到各种编程问题的解决方案,《PHP经典实例(第2版)》中内容涵盖了:表单处理;Session管理;数据库交互;使用We
453
<code>Array
(
[5] => Array
(
[0] => Array
(
[num] => 840
[time] => 2015-10
[ads_id] => 5
)
[1] => Array
(
[num] => 684
[time] => 2015-11
[ads_id] => 5
)
)
[7] => Array
(
[0] => Array
(
[num] => 280
[time] => 2015-10
[ads_id] => 7
)
[1] => Array
(
[num] => 343
[time] => 2015-11
[ads_id] => 7
)
)
[6] => Array
(
[0] => Array
(
[num] => 23
[time] => 2015-10
[ads_id] => 6
)
[1] => Array
(
[num] => 37
[time] => 2015-11
[ads_id] => 6
)
)
)
</code>php新手请教一个问题;
原数组结构如下,原数组是按ads_id,time进行排序;
现在的需求是根据二维数组的num总和重新进行排序
<code>Array
(
[5] => Array
(
[0] => Array
(
[num] => 840
[time] => 2015-10
[ads_id] => 5
)
[1] => Array
(
[num] => 684
[time] => 2015-11
[ads_id] => 5
)
)
[6] => Array
(
[0] => Array
(
[num] => 23
[time] => 2015-10
[ads_id] => 6
)
[1] => Array
(
[num] => 37
[time] => 2015-11
[ads_id] => 6
)
)
[7] => Array
(
[0] => Array
(
[num] => 280
[time] => 2015-10
[ads_id] => 7
)
[1] => Array
(
[num] => 343
[time] => 2015-11
[ads_id] => 7
)
)
)
</code>最终实现排序如下:
<code>Array
(
[5] => Array
(
[0] => Array
(
[num] => 840
[time] => 2015-10
[ads_id] => 5
)
[1] => Array
(
[num] => 684
[time] => 2015-11
[ads_id] => 5
)
)
[7] => Array
(
[0] => Array
(
[num] => 280
[time] => 2015-10
[ads_id] => 7
)
[1] => Array
(
[num] => 343
[time] => 2015-11
[ads_id] => 7
)
)
[6] => Array
(
[0] => Array
(
[num] => 23
[time] => 2015-10
[ads_id] => 6
)
[1] => Array
(
[num] => 37
[time] => 2015-11
[ads_id] => 6
)
)
)
</code>
<code>function mySort($a, $b) {
$sumA = 0;
$sumB = 0;
foreach($a as $ele) {
$sumA += $ele['num'];
}
foreach($b as $ele) {
$sumB += $ele['num'];
}
return $sumB < $sumA;
}
usort($arr, 'mySort');</code>
使用 usort 自定义排序规则
立即学习“PHP免费学习笔记(深入)”;
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号