[RESOLU] Fopen sur le fichier le plus récent d'un dossier

sYph0s
Invité n'ayant pas de compte PHPfrance

30 avr. 2009, 09:42

Bonjour,
Dans un fichier php, je voudrais ouvrir un fichier *.txt à l'aide d'un fopen mais le dossier contient plusieurs fichiers.
Comment lui dire de sélectionner le fichier le plus récent ?

merci

Mammouth du PHP | 661 Messages

30 avr. 2009, 10:40

je dirais, tu peux créer un tableau avec en clé la date de modification récupérée avec lstat()
ensuite tu le range, et tu récupère la clé la plus haute ...

@+

sYph0s
Invité n'ayant pas de compte PHPfrance

03 mai 2009, 13:55

Merci pour ta réponse, mais n'étant pas encore une bete en php, je n'ai pas tout compris. Pourrais-tu détailler s'il te plait ?

merci :)

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

03 mai 2009, 18:00

Modération :
Afin d'obtenir plus de réponses, le sujet est déplacé dans le forum "PHP débutant".
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 661 Messages

03 mai 2009, 18:57

alors, tu devrais utiliser :
$txtFiles = array();

$contentsDir = scandir('chemin_vers_le_dossier');
foreach($contentDir as $content){
  if(!is_dir($content) && substr($content, -4)=='.txt'){
    $stat = lstst($content);
    $txtFiles[$stat['mtime']] = $content;
  }
}

krsort($txtFiles);
reset($txtFiles);

$file_a_utiliser = current($txtFiles);
Voila un exemple utilisant 5 petites fonctions trés pratique, il y a probablement plus simple, mais si tu débute, fait le tour de celles-ci et tu apprendra un peu sur le PHP et la manipulation des tables

@++