sql >> Databáze >  >> RDS >> Mysql

Řazení polí podle data

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/ .



  1. Jak vybrat více záznamů (řádek) ze sloupce v mysql?

  2. Spousta stavů Query End v MySQL, všechna připojení použitá během několika minut

  3. SQLite AVG

  4. Je timestampdiff() v MySQL ekvivalentní datediff() na SQL Server?