源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

php比较多维数组中值的大小排序实现代码

  • 时间:2022-12-16 23:12 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:php比较多维数组中值的大小排序实现代码
如果值没有重复的情况,可以先用array_flip()来交换键和值,然后krsort(),最后再array_flip()交换回来,就可以比较大小了。如果要截取数组,可用array_slice()。 如果有值重复的情况,就要用到一些排序算法了,不过php有很强大的函数uasort(),使用自定义的比较函数对数组中的值进行排序并保持索引关联,usort()则会重建索引。
[u]复制代码[/u] 代码如下:
function cmp($a, $b){ if ($a["vote_num"] == $b["vote_num"]) { return 0; } return ($a["vote_num"] > $b["vote_num"]) ? -1 : 1; } $arr = Array ( 0 => Array ( o_id => 1861, o_name => 2, o_pic => 'http://g.jb51.net/image.gif' , o_detail => 人人, vote_num => 1 ), 1 => Array ( o_id => 1844, o_name => 芭比, o_pic => 'http://upload.jb51.net/game_image/dfxxz/dfVIP.files/shenxiandao.jpg', o_detail => 也是美女呢, vote_num => 2 ), 2 => Array ( o_id => 1843, o_name => 程程, o_pic => 'http://g.jb51.net./upload_img/2011-06/31554_4d0088da7a61ad9c8c02a530be94d98e.png', o_detail => 美女哦, vote_num => 3 ) ); uasort($arr, ”cmp“); echo ‘< pre style="text-align:left" >'; print_r ($arr); echo ‘< / pre >';
返回
[u]复制代码[/u] 代码如下:
Array ( [2] => Array ( [o_id] => 1843 [o_name] => 程程 [o_pic] => http://g.jb51.net./upload_img/2011-06/31554_4d0088da7a61ad9c8c02a530be94d98e.png [o_detail] => 美女哦 [vote_num] => 3 ) [1] => Array ( [o_id] => 1844 [o_name] => 芭比 [o_pic] => http://upload.jb51.net/game_image/dfxxz/dfVIP.files/shenxiandao.jpg [o_detail] => 也是美女呢 [vote_num] => 2 ) [0] => Array ( [o_id] => 1861 [o_name] => 2 [o_pic] => http://g.jb51.net/image.gif [o_detail] => 人人 [vote_num] => 1 ) )
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部