par

Comment faire pour lister le contenu d'un répertoire en PHP ?

2 Réponses

+1 validé
par

Voici une fonction en PHP qui permet de lister le contenu, fichiers et dossiers, d'un répertoire. La fonction utilise les fonctions PHP natives suivantes :

Placez le script PHP suivant dans le répertoire dont vous voulez voir le contenu et lister les fichiers et sous-dossiers.

<?php
error_reporting(E_ALL);
ini_set("display_errors", 0);

function lister_fichiers($rep)  
{  
	if(is_dir($rep))  
	{  
		if($iteration = opendir($rep))  
		{  
			while(($fichier = readdir($iteration)) !== false)  
			{  
				if($fichier != "." && $fichier != ".." && $fichier != "Thumbs.db")  
				{  
					echo '<a href="'.$rep.$fichier.'" target="_blank" >'.$fichier.'</a><br />'."\n";  
				}  
			}  
			closedir($iteration);  
		}  
	}  
} 

lister_fichiers("./");
?>
+1 validé
par

Si vous voulez lister le contenu du répertoire de manière récursive, et afficher tous les sous-dossiers et leurs contenus, utilisez la fonction suivante :

<?php
error_reporting(E_ALL);
ini_set("display_errors", 0);

function getDirrecurse($path = '.', $level = 0)
{
	$ignore = array('cgi-bin', '.', '..');
	$dir = @opendir($path);
		while(false !== ($file = readdir($dir)))
		{ 
			if(!in_array($file, $ignore))
			{     
				$spaces = str_repeat('&nbsp;', ($level*4));	 
				if(is_dir("$path/$file"))
				{ 
					echo "<strong>$spaces $file</strong><br />"; 
					getDirrecurse( "$path/$file", ($level+1));       
				} 
				else 
				{ 
					echo "$spaces $file<br />"; 
				}
			}
		}
	closedir($dir); 
}

getDirrecurse();
?>

Prêtez une attention particulière à la ligne suivante :

$ignore = array('cgi-bin', '.', '..');

Ajoutez y éventuellement des noms de répertoires qui devraient être exclus. Par ailleurs $spaces et $level ne sont utilisés que pour gérer l'affichage. Vous pouvez les shunter si nécessaire.

Lectures Recommandées

Régis Chaperon - Welcome Reset

"Lorsqu'un virus informatique d'une nouvelle génération infecte en quelques heures les systèmes de distribution électriques, le monde entier se retrouve plongé dans le noir. Les banques, les distributeurs de billets, le chauffage, tout s'arrête."

Mais si même une intelligence artificielle américaine est incapable de vaincre le virus, est-ce qu'un homme qui a fui la modernité saura découvrir la faiblesse de ce virus informatique inconnu ?

Welcome Reset est un roman bien rythmé, efficace et réaliste.

Edward Snowden - Mémoires vives

"Je m'appelle Edward Joseph Snowden. Avant, je travaillais pour le gouvernement mais aujourd'hui je suis au service de tous. Il m'a fallu près de trente ans pour saisir la différence et quand j'ai compris, ça m'a valu quelques ennuis au bureau."

L'homme qui a tout risqué pour dénoncer la surveillance globale, ou l'extraordinaire histoire d'un garçon brillant qui a grandi "en ligne", d'un homme devenu espion, puis lanceur d'alerte, et, en exil, la consciencce de l'internet.

Mémoires vives est un témoignage exceptionnel, également disponible en numérique.

Sujets Connexes

Offre Sponsorisée

Ailleurs sur le Web

Merci pour votre visite sur 1FORMATIK.com

Un petit clic sur la pub est toujours apprécié, c'est elle qui finance le site

Bon surf

...