begin process at 2012 05 30 14:03:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

3 deniers fichiers ajouté...


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

3 deniers fichiers ajouté...

dimanche 16 novembre 2008 à 22:30:29 | 3 deniers fichiers ajouté...

mailys

Bonjour,
J'ai trouver un code me permettant de lister les 3 derniers fichiers ajoutés dans un dossier. Mon problème est que je n'arrive pas à trouver le moyen d'explorer aussi les sous-dossiers de ce dossier. Est-ce que c'est possible et comment ?
Merci pour vos réponses...
Mailys

voila le code que j'ai trouvé : (merci à audayls)

<?php
$dir = 'mondossier/'; // Dossier à analyser.
$limit = 3; // Limite de fichier à présenter.

$files = array();
if (substr($dir, -1, 1) !== '/') $dir .= '/'; // On vérifie que le dernier caractère de la chaîne "$dir" soit un "/" sinon on en ajoute un.
if (is_dir($dir) AND ($dh = opendir($dir)) !== FALSE) { // On vérifie que la variable "$dir" indique un dossier et on l'ouvre dans la variable "$dh".
    $i = 0;
    while (($file = readdir($dh)) !== FALSE) { // On lit chaques fichiers.
        $temp = explode('.', $file); // On "explose" le nom du fichier pour chaques "." trouvés.
        if (end($temp) === 'php' AND $i < $limit) { // On vérifie que le dernier texte soit "zip" et on vérifie que la limite ne soit pas dépasser.
            $files[filemtime($dir.$file)] = $file; // On place le fichier dans le tableau "$files" avec pour clé le Timestamp de la dernière modification du fichier.
            $i++; // On ajoutes 1 à la variable "$i".
        }
    }
    closedir($dh); // Quand le dossier a été lu, on le referme.
}
sort($files); // On trie les fichiers par leur clés.
$temp = array_keys($files); // On extrait les clés du tableau "$files" pour les placer en valeurs dans le tableau "$temp".
$i = -1;
while (isset($temp[++$i])) echo '<a href="www.monsupersite.com/',$dir,$files[$temp[$i]],'">',$files[$temp[$i]],'</a><br />';
?>

mercredi 19 novembre 2008 à 00:59:34 | Re : 3 deniers fichiers ajouté...

malalam

Administrateur CodeS-SourceS
hello,

<?php
function mySortByFilemtime($a, $b) {
    if(filemtime($a) === filemtime($b)) {
        return 0;
    }
    return (filemtime($a) < filemtime($b)) ? 1 : -1;
}


$sDir = 'misc';
$itDir = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($sDir), true);
foreach ($itDir as $sFile) {
    $aDir[] = $sFile->getPathName();
}
usort($aDir, 'mySortByFilemtime');
print_r(array_slice($aDir, 0, 3));
?>

mercredi 19 novembre 2008 à 10:48:25 | Re : 3 deniers fichiers ajouté...

mailys

Bonjour,
merci beaucoup pour ta réponse mais j'obtiens une erreur que je n'avais jamais vu et que je n'arrive pas à résoudre :
Fatal error: Cannot instantiate non-existent class: recursivedirectoryiterator in /mnt/102/free.fr/d/6...

<?php
function mySortByFilemtime($a, $b) {
    if(filemtime($a) === filemtime($b)) {
        return 0;
    }
    return (filemtime($a) < filemtime($b)) ? 1 : -1;
}


$sDir = 'documents/';
$itDir = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($sDir), true); //sur cette line...
foreach ($itDir as $sFile) {
    $aDir[] = $sFile->getPathName();
}
usort($aDir, 'mySortByFilemtime');
print_r(array_slice($aDir, 0, 3));
?>

Désolé de t'embêter...
Mailys
mercredi 19 novembre 2008 à 10:50:31 | Re : 3 deniers fichiers ajouté...

mailys

Excuse moi, l'erreur est :
Fatal error: Cannot instantiate non-existent class: recursiveiteratoriterator in /mnt/102/free.fr/d/6...
Merci
mercredi 19 novembre 2008 à 12:17:18 | Re : 3 deniers fichiers ajouté...

malalam

Administrateur CodeS-SourceS
Ah ben t'es pas en PHP5 alors ou une version très ancienne de PHP5 ne possèdant pas toute la SPL.
Je verrai ton truc ce soir en PHP4, là, pas le temps.

mercredi 19 novembre 2008 à 13:36:45 | Re : 3 deniers fichiers ajouté...

mailys

Comment on fait pour etre en php5 ?
Pas de problème pour ce soir.
Encore merci
Mailys
mercredi 19 novembre 2008 à 19:05:20 | Re : 3 deniers fichiers ajouté...

malalam

Administrateur CodeS-SourceS
Ben je ne sais pas, tu es chez quel hébergeur?
mercredi 19 novembre 2008 à 20:00:00 | Re : 3 deniers fichiers ajouté...

mailys

Cher free.fr
mercredi 19 novembre 2008 à 20:03:03 | Re : 3 deniers fichiers ajouté...

malalam

Administrateur CodeS-SourceS
Chez free, si tes fichiers se terminent par .php5, tu es en php5, il me semble.
mercredi 19 novembre 2008 à 22:12:38 | Re : 3 deniers fichiers ajouté...

mailys

Super ça fonctionne parfaitement...
Merci beaucoup pour ton aide.
Mailys


Cette discussion est classée dans : dossier, fichiers, temp, dir, files


Répondre à ce message

Sujets en rapport avec ce message

les liens vers les fichiers [ par abdellah1505 ] Bonjour,j'ai trouvé ce script qui liste les 3 derniers fichiers ajouté dans un dossier mais il ne donne pas des liens vers les fichiers juste leurs no déplacer des fichiers et supprimer des dossiers [ par zut69 ] <td id="HB_Focus_Element" unselectab="" bac lister dossiers uniquements [ par shadow1779 ] Bonjour,il existe dans les codes de nombreux scripts pour lister le contenu d'un dossier, cependant cela liste les fichiers et dossier contenu, je vou Upload multiple de fichiers [ par Sly_83 ] Bonjour,je cherche un script qui permet d'uploader plusieurs fichiers mais sans les électionner un par un, par exemple en pointant vers un dossier et Listage d'un repertoire / Un truc m'échappe [ par gorbfr ] Bonjour,J'ai ce code qui fonctionne bien :function lire_dossier($dir){  $dossier=opendir($dir);  while($fichier=readdir($dossier))  {    $ignore=array galerie d'image [ par darknessneo ] Bonjours à tous.Je vais aller tout de suite dans le vif du sujet. J'ai cherché partout un script pour une galerie d'image, mais aucunes ne me convenai opendir [ par jphilippev ] bonjour j'ai pris un code du manuel php pour ouvrir un dossier (opendir)et en début de boucle il me renvoirfichier : .fichier : ..</font Créer un tableau html en php... avec une subtilité ! [ par vxr888 ] Bonsoir à tous,J'ai un soucis et j'espère trouver une réponse chez vous.Je vous expose le problème :J'ai écrit un code qui parcourt un dossier (avec r Sernier dossier [ par maximev ] Bonjour,J'utilise le code ci-dessous pour me connecter à un ftp depuis une page de mon site afin d'y chercher le dossier le plus récent mais cela ne f Vérification dossier, problème [ par Satan2k ] Voila je fais un explorateur de dossier multi-utilisateurs en ligne mais voila j'ai un problème que je n'arrive pas à résoudre. Je veux faire en sort


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,312 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales