mercoledì 19 gennaio 2011

PHP ARRAY SORT

function array_sort($arr, $on, $order=SORT_ASC)
{

    $new_array = array();
    $sortable_array = array();

    if (count($arr) > 0) {
        foreach ($arr as $k => $v) {
            if (is_array($v)) {
                foreach ($v as $k2 => $v2) {
                    if ($k2 == $on) {
                        $sortable_array[$k] = $v2;
                    }
                }
            } else {
                $sortable_array[$k] = $v;
            }
        }

        switch ($order) {
            case SORT_ASC:
                asort($sortable_array);
            break;
            case SORT_DESC:
                arsort($sortable_array);
            break;
        }

        foreach ($sortable_array as $k => $v) {
            $new_array[$k] = $arr[$k];
        }
    }

    return $new_array;
}

Nessun commento:

Posta un commento