[bout de code]Indexion des fichiers.
Rwan
Member
Salut,
Voila une astuce qui permet d'indexer tout les fichiers d'un répertoire et de ses sous répertoires .
(sauf si on passe part des tableaux) .
Avec vous prouver par exemple gérer un fichier rss et manipuler celui-ci à votre guise .
Voila une astuce qui permet d'indexer tout les fichiers d'un répertoire et de ses sous répertoires .
<?php
$path = realpath('./mondossier');
$objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST);
foreach($objects as $name => $object){
if (!eregi("inc_de_mon_site|index|.php|.ico|.htaccess|.txt|.html|.gif|divers_dossiers",$name)) {//filtre les fichiers interdits
if ($object->isFile()) {//les fichiers seulement
$ext = pathinfo($object->getFilename()); //extension du fichier
$remplace=explode('/home/chemin_absolue_ de_mon_site',$name);//linux. le masque pour avoir url du fichier
//$remplace=explode('C:\Users\Erwan\Desktop\xampplite\htdocs',$name);\\windows
//$remplace=str_replace('\\','/',$remplace[1]);\\windows
echo "" . $object->getFilename() . "";//affiche le nom du fichier
echo "http://" . $_SERVER['HTTP_HOST']. "$remplace[1]"//affiche url du fichier
echo "" . date("D, d M o G:i:s T",$object->getATime()) . "";//la date
echo $ext['extension'];//l'extension
}
}
}//foreach
?>
Précision pour le filtre, là il interdit une de ces expressions dans la chaine de caractère du chemin du fichier .
if (!eregi("inc_de_mon_site|index|.php|.ico|.htaccess|.txt|.html|.gif|divers_dossiers",$name)) {
là, il autorise seulement les fichier *.png et *. jpg.
if (eregi(".png|.jpg",$name)) {
Le seul problème de ce script est le fait qu'il n'est pas possible de généré que x fichiers, il traitera tous .(sauf si on passe part des tableaux) .
Avec vous prouver par exemple gérer un fichier rss et manipuler celui-ci à votre guise .
Connectez-vous ou Inscrivez-vous pour répondre.