Ordenar una array multidimensional por elemento de fecha en PHP

Ordenar una array multidimensional por elemento que contiene la fecha. Use la función usort() para ordenar la array. La función usort() es una función incorporada de PHP que ordena una array determinada utilizando la función de comparación definida por el usuario. Esta función asigna nuevas claves integrales a partir de cero a los elementos de la array.

Sintaxis:

boolean usort( $array, "function_name")

Parámetros: Esta función acepta dos parámetros como se muestra en la sintaxis anterior y se describen a continuación:

  • $array: este parámetro especifica la array que desea ordenar.
  • function_name: este parámetro especifica el nombre de una función definida por el usuario que compara los valores y ordena la array especificada por el parámetro $array. Esta función devuelve un valor entero basado en las siguientes condiciones. Si dos argumentos son iguales, devuelve 0, si el primer argumento es mayor que el segundo, devuelve 1 y si el primer argumento es menor que el segundo, devuelve -1.

Valor devuelto: esta función devuelve un valor de tipo booleano. Devuelve VERDADERO en caso de éxito y FALSO en caso de fracaso.

Usamos strtotime para convertir una string de tiempo dada en un objeto de marca de tiempo. Una vez que tenemos las marcas de tiempo, las restamos para decidir más.

Programa:

<?php
  
// Declare a multidimensional array
// and initialize it
$array = Array (
    Array (
        "gfg" => "GFG_1",
        "datetime" => "2019-02-22 11:29:45",
        ),
    Array (
        "gfg" => "GFG_2",
        "datetime" => "2019-02-13 11:29:45",
    ),
    Array (
        "gfg" => "GFG_3",
        "datetime" => "2019-02-15 11:29:45",
    )
);
  
// Comparison function
function date_compare($element1, $element2) {
    $datetime1 = strtotime($element1['datetime']);
    $datetime2 = strtotime($element2['datetime']);
    return $datetime1 - $datetime2;
} 
  
// Sort the array 
usort($array, 'date_compare');
  
// Print the array
print_r($array)
  
?>
Producción:

Array
(
    [0] => Array
        (
            [gfg] => GFG_2
            [datetime] => 2019-02-13 11:29:45
        )

    [1] => Array
        (
            [gfg] => GFG_3
            [datetime] => 2019-02-15 11:29:45
        )

    [2] => Array
        (
            [gfg] => GFG_1
            [datetime] => 2019-02-22 11:29:45
        )

)

Publicación traducida automáticamente

Artículo escrito por aman neekhara y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *