Afficher la dernière image téléchargée

Fermé
tibo - 9 janv. 2016 à 19:01
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 11 janv. 2016 à 12:20
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:

<?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 ?



A voir également:

1 réponse

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
11 janv. 2016 à 12:20
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
0