1) Lister un répertoire récursivement
posté par Yves Maistriaux (ID : 90)
Une fonction pour lister récursivement vos fichiers et dossiers.
<?php
function lister_recursYves($dos)
{
if(!is_dir($dos)) return false;
$ouvrir=opendir($dos);
while(false !==($file = readdir($ouvrir)))
{
if($file != '.' && $file != '..')
{
if(is_file($dos.'/'.$file))
echo $dos.'/'.$file.'<br />';
else
if(is_dir($dos.'/'.$file))
{
echo '<strong>',$dos,'/',$file,'</strong><br />';
lister_recursYves($dos.'/'.$file);
}
}
}
}
// exemple d'emploi :
$dossier='../mondossier';
echo lister_recursYves($dossier);
?>
2) Lister simplement un dossier
posté par Yves Maistriaux (ID : 91)
Une portion simple pour lister un dossier
<?php
$dos='dossier_test';
if ($lister = opendir($dos)) {
while (false !== ($file = readdir($lister))) {
if ($file != '.' && $file != '..') {
echo $file,'<br />';
}
}
closedir($lister);
}
?>
3) Listage facile avec glob
posté par Yves Maistriaux (ID : 92)
Pour ceux qui bénéficie de l'emploi de la fonction glob() voici un listage de dossier en deux lignes de code avec un foreach
<?php
$dos='mondossier/';
foreach(glob($dos.'*') as $val)
{
echo $val,'<br />';
}
// variante pour enlever le nom du dossier à la place de echo $val
// echo str_replace($dos,'',$val)
?>
4) Listage avec glob + vérification extension
posté par Yves Maistriaux (ID : 115)
On liste grâce à glob en sélectionnant les extensions que l'on souhaite extraire.
<?php
$dos='mondossier/';
foreach(glob($dos."{*.gif,*.jpg,*.jpeg,*.png}", GLOB_BRACE) as $val)
{
echo $val,'<br />';
}
?>
5) Lister répertoire images
posté par Yves Maistriaux (ID : 122)
Lister simplement les images d'un répertoire
Variante :
Affichage aléatoire d'une image
<?php
$dos='images/';
$tab=glob($dos."{*.gif,*.jpg,*.jpeg,*.png}", GLOB_BRACE);
echo '<pre>';
echo print_r($tab,true);
echo '</pre>';
//=== Variante - Affichage aléatoire d'une image du dossier ===
shuffle($tab);
echo '<img src="',current($tab),'" alt="" />';
?>
?>