Afficher la dernière image téléchargée
tibo
-
Pitet Messages postés 2845 Statut Membre -
Pitet Messages postés 2845 Statut Membre -
Bonjour,
Je cherche à faire des galeries fancybox, donc pour chaque galeries je souhaiterai avoir la dernière image ajoutée sur ma page et lorsque je clique dessus cela ouvre ma galerie via fancybox:
voici mon code:
Donc mon problème c'est que toutes mes images ("mini") s'affiche sur la page or je souhaiterai uniquement avoir la dernière ajoutée, comment pourrai-je faire ?
Je cherche à faire des galeries fancybox, donc pour chaque galeries je souhaiterai avoir la dernière image ajoutée sur ma page et lorsque je clique dessus cela ouvre ma galerie via fancybox:
voici mon code:
<?php
$villa = "img/travaux/villa/mini/";
$dir = opendir($villa);
while($file = readdir($dir)){
$allow_ext = array("jpg",'png','gif');
$ext = strtolower(substr($file,-3));
if(in_array($ext,$allow_ext)){
?>
<a rel="single_1" href="img/travaux/villa/<?php echo $file; ?>" title="">
<img src="img/travaux/villa/mini/<?php echo $file; ?>"/>
<?php
}
}
?>
</a>
Donc mon problème c'est que toutes mes images ("mini") s'affiche sur la page or je souhaiterai uniquement avoir la dernière ajoutée, comment pourrai-je faire ?
1 réponse
-
Salut,
Une solution possible :<?php // on récupère tous les fichiers jpg, png et gif du dossier img/travaux/villa/mini/ $files = glob('img/travaux/villa/mini/*.{jpg,png,gif}', GLOB_BRACE); // on récupère la date de modification de chaque fichier $files = array_combine($files, array_map("filemtime", $files)); // on tri la liste des fichiers selon la date de modification arsort($files); // le premier fichier de la liste triée est donc le dernier fichier modifié $latest_file = key($files); if($latest_file) { ?> <a rel="single_1" href="img/travaux/villa/<?php echo $latest_file; ?>" title=""> <img src="img/travaux/villa/mini/<?php echo $latest_file; ?>"/> </a> <?php } else { echo 'Pas de fichier'; }
Source : https://stackoverflow.com/questions/5448374/get-last-modified-file-in-a-directory
Bonne journée