Maison > développement back-end > tutoriel php > Comment trier un tableau PHP multidimensionnel par un élément Datetime ?

Comment trier un tableau PHP multidimensionnel par un élément Datetime ?

DDD
Libérer: 2024-12-16 15:10:21
original
437 Les gens l'ont consulté

How to Sort a Multidimensional PHP Array by a Datetime Element?

Tri des tableaux multidimensionnels par élément de date en PHP

Considérons un tableau avec une structure similaire à celle ci-dessous :

$array = [
    [
        'id' => 2,
        'type' => 'comment',
        'text' => 'hey',
        'datetime' => '2010-05-15 11:29:45',
    ],
    [
        'id' => 3,
        'type' => 'status',
        'text' => 'oi',
        'datetime' => '2010-05-26 15:59:53',
    ],
    [
        'id' => 4,
        'type' => 'status',
        'text' => 'yeww',
        'datetime' => '2010-05-26 16:04:24',
    ],
];
Copier après la connexion

Comment pouvons-nous trier ce tableau par l'élément 'datetime' ?

Utiliser usort() avec une comparaison personnalisée Fonction

La fonction usort() de PHP prend un tableau et une fonction de comparaison qui détermine l'ordre des éléments. Nous pouvons créer une fonction de comparaison personnalisée appelée date_compare comme suit :

function date_compare($a, $b)
{
    $t1 = strtotime($a['datetime']);
    $t2 = strtotime($b['datetime']);
    return $t1 - $t2;
}
Copier après la connexion

Cette fonction extrait l'horodatage UNIX pour le champ 'datetime' de chaque enregistrement et renvoie la différence entre eux. Ces informations sont utilisées par usort() pour trier le tableau.

Application de la fonction de tri

Enfin, nous pouvons appliquer la fonction de tri au tableau en utilisant usort() :

usort($array, 'date_compare');
Copier après la connexion

Cela triera le tableau par ordre croissant en fonction de l'élément 'datetime'.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal