怎样计算多维数组第一维分量的最大值?

#1 tmd

比如有个数组$user=array(array('name'='bob','age'=25),array('name'='fox','age'=20),array('name'='mike','age'=35)),如何计算$user数组中最大的年龄?

2011-02-12 11:04:50

#2 jake


function array_msort($array, $cols)
{
    $colarr = array();
    foreach ($cols as $col => $order) {
        $colarr[$col] = array();
        foreach ($array as $k => $row) { $colarr[$col]['_'.$k] = strtolower($row[$col]); }
    }
    $params = array();
    foreach ($cols as $col => $order) {
        $params[] =& $colarr[$col];
        $params = array_merge($params, (array)$order);
    }
    call_user_func_array('array_multisort', $params);
    $ret = array();
    $keys = array();
    $first = true;
    foreach ($colarr as $col => $arr) {
        foreach ($arr as $k => $v) {
            if ($first) { $keys[$k] = substr($k,1); }
            $k = $keys[$k];
            if (!isset($ret[$k])) $ret[$k] = $array[$k];
            $ret[$k][$col] = $array[$k][$col];
        }
        $first = false;
    }
    return $ret;

}
$user = array_msort($user, array('age'=>array(SORT_DESC)));

2011-02-12 12:03:03

#3 tmd

多谢老大,给了一个数组排序的功能,试验成功。内容还没看懂……汗……慢慢体会中……

2011-02-12 16:55:59

#4 jake

这个是我之前在php.net找到的,我自己也在用,挺好用的。原理我也不懂,呵呵。

http://php.net/manual/en/function.array-multisort.php

2011-02-12 17:01:36

#5 tmd

呵呵,老大也不懂,于心顿感安慰!

2011-02-13 21:20:56