To, co se snažíte udělat, je seřadit multidimenzionální pole, na Googlu o tom můžete najít spoustu. Pěkné elegantní řešení by bylo něco jako:
// 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'];
}
ÚPRAVA 1:
Pro ty v komentářích, kteří pochybují o tom, zda by tento kód fungoval, ho prosím vyzkoušejte (dokonce jsem přidal datum, které je duplicitní pro účely testování):
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>';
'; Dobrým místem pro rychlé testování by bylo přejít na http://writecodeonline.com/php/ .