php二维数组中按某个元素的值排序

<?phpforeach($a['list']as$k=>$v){?><li><aclass="l"href="<?phpecho$v['surl'];?>"><imgs... <?php foreach($a['list'] as $k => $v){?>
<li>
<a class="l" href="<?php echo $v['surl'];?>">
<img src="<?php echo $v['app_logo'];?>" border="0" alt="<?php echo $v['app_title'];?>">
</a>
<dl class="l">
<dt>
<a href="<?php echo $v['surl'];?>" class="l"><?php echo $v['app_title'];?></a>
<span class="l versions">(<?php echo $v['app_version'];?>)</span>
<div class="l level"><span class="<?php echo "l".ceil($v['app_recomment']/2); ?>"></span></div>
</dt>
<dd>
<?php echo $v['app_desc']; ?>
</dd>
<dd>
<span class="mr25"><?php echo date("Y-m-d",$v['app_update_time']);?> 发布</span>
</dd>
</dl>
<div class="r">
<span class="down-icon"></span>
<span class="down-num"><?php echo $v['app_down'];?></span>
<a href="<?php echo $v['surl'] ?>" class="down-i-btn">免费下载</a>
</div>
我想按app_down的数值进行降序应该怎么改?
展开
 我来答
小花椒Daddy
2015-08-07 · 超过29用户采纳过TA的回答
知道答主
回答量:59
采纳率:50%
帮助的人:49.7万
展开全部
//提供一个方法
class lib_BaseUtils{
        static $s_field;
static $s_sc;
/**
 * php 二维数组按键值排序
 * @param array $a 需要排序的数组
 * @param string $sort 排序的键值
 * @param string $d 默认ASC,带上参后为DESC
 * @return boolean
 */
static function array_sort(&$a, $sort, $d='') {
self::$s_field = $sort;
self::$s_sc = $d;
usort($a, array("lib_BaseUtils","array_sort_callback"));
return $a;
}
//排序回调方法 请勿删除
static function array_sort_callback($a, $b) {
$s_a = self::$s_sc ? $b : $a;
$s_b = self::$s_sc ? $a : $b;
$field = self::$s_field;
switch (true){
    case (is_string($s_a[$field]) && is_string($s_b[$field])):
        return strcmp($s_a[$field], $s_b[$field]);
        break;
    default:
        if($s_a[$field]== $s_b[$field]){
            return 0;
        }else{
            return $s_a[$field]>$s_b[$field]?-1:1;
        } 
}
}
}

调用方法 

lib_BaseUtils::array_sort($lists, 'app_down','desc');

追问
调用的代码应该放在那里?求指教
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式