Maison > développement back-end > tutoriel php > Comment puis-je trier efficacement les fichiers par date de dernière modification en PHP à l'aide de glob() ?

Comment puis-je trier efficacement les fichiers par date de dernière modification en PHP à l'aide de glob() ?

Barbara Streisand
Libérer: 2024-12-04 21:35:19
original
651 Les gens l'ont consulté

How Can I Efficiently Sort Files by Last Modified Date in PHP Using glob()?

Tri des fichiers par date et heure de dernière modification à l'aide de la fonction glob()

La fonction glob() est une fonction PHP puissante permettant de faire correspondre des fichiers à un modèle donné. Lorsqu'il est combiné avec le tri, il offre un moyen efficace d'organiser les fichiers en fonction de critères spécifiques.

Problème

Si vous devez afficher un tableau de fichiers classés par leur dernier horodatage modifié, une approche courante consiste à parcourir le tableau et à les trier manuellement dans un nouveau tableau. Cependant, cette méthode peut prendre du temps et être inefficace.

Solution

PHP propose une solution plus efficace en utilisant la fonction usort(). Cette fonction prend deux arguments : un tableau à trier et une fonction de comparaison qui détermine l'ordre des éléments.

Le code suivant montre comment utiliser usort() en combinaison avec glob() pour trier un tableau de fichiers. par leur dernier horodatage modifié :

<?php

$myarray = glob("*.*");
usort($myarray, create_function('$a,$b', 'return filemtime($a) - filemtime($b);'));

?>
Copier après la connexion

Explication

La fonction glob() renvoie un tableau de fichiers correspondant le motif ".". La fonction usort() est ensuite appliquée au tableau.

La fonction de comparaison fournie à usort() utilise la fonction filemtime() pour extraire les horodatages de modification de chaque fichier et les soustrait pour déterminer l'ordre. Le résultat de ce calcul est utilisé pour trier le tableau par ordre croissant ou décroissant en fonction du dernier horodatage modifié.

Remarque

La fonction d'assistance create_function() utilisée dans le code fourni est obsolète dans PHP 7.2.0. Les méthodes alternatives pour définir des fonctions anonymes en PHP incluent les fonctions lambda ou la syntaxe de fermeture. Par exemple :

usort($myarray, function ($a, $b) {
    return filemtime($a) - filemtime($b);
});
Copier après la connexion

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal