Quello che stai cercando di fare è ordinare un array multidimensionale, puoi trovare molto su Google su questo. Una bella soluzione elegante sarebbe qualcosa del tipo:
// Sort the multidimensional array
usort($results, "custom_sort");
// Define the custom sort function
function custom_sort($a,$b) {
return $a['some_sub_var']>$b['some_sub_var'];
}
MODIFICA 1:
Per coloro nei commenti che dubitano che questo codice funzioni, non esitare a provarlo (ho anche aggiunto una data duplicata a scopo di test):
function custom_sort($a,$b) {
return $a['added']>$b['added'];
}
$arrayToSort = array(
array(
"added" => "2012-01-17 07:33:53",
"type" => "1"
),
array(
"added" => "2012-01-13 06:36:22",
"type" => "1"
),
array(
"added" => "2012-01-09 04:01:12",
"type" => "2"
),
array(
"added" => "2012-02-08 02:08:32",
"type" => "2"
),
array(
"added" => "2012-01-25 00:09:08",
"type" => "2"
),
array(
"added" => "2012-01-13 06:36:22",
"type" => "1"
),
array(
"added" => "2012-01-13 06:36:22",
"type" => "1"
),
array(
"added" => "2012-01-23 00:09:08",
"type" => "3"
),
array(
"added" => "2012-01-22 00:09:08",
"type" => "3"
)
);
usort($arrayToSort, "custom_sort");
echo '<pre>';
print_r($arrayToSort);
echo '</pre>';
'; Un buon posto per testare rapidamente sarebbe andare a http://writecodeonline.com/php/ .