[PHP] Compter nombre fichiers dans dossier
Tags :
Dernière réponse : dans Programmation
Bonjour, ben c'est assez simple, mais je trouve pas:
J'ai un dossier : img/
et je voudrais compter combien il y a de fichiers à l'intérrieur!
en php pour faire ensuite : echo "Il y a".$nbr_fichiers." dans le dossier image";
merci d'avance
J'ai un dossier : img/
et je voudrais compter combien il y a de fichiers à l'intérrieur!
en php pour faire ensuite : echo "Il y a".$nbr_fichiers." dans le dossier image";
merci d'avance
Autres pages sur : php compter nombre fichiers dossier
Lassé par la pub ? Créez un compte
- | Alerter
- | Alerter
J'ai enfin fini par trouver quelquechose ...
Cette fonction retourne le nombre de fichiers situés dans le répertoire spécifié $dir.
Elle ne prend pas en compte les sous-répertoires.
Exemple d'utilisation :
// Assigne à la variable $num_images le nombre de fichiers contenus dans le répertoire "site/images"
$num_images = count_files("site/images");
Vous pouvez spécifier un chemin de répertoire commençant par http://, ftp://,... si vous avez les droits nécessaires à la lecture des répertoires situés à distance.
voila ce que j'ai trouvé sur : http://www.phpcs.com/codes/NOMBRE-FICHIERS-DANS-REPERTO...
Sauf que maintenant je cherche les astuces pour que ca fonctionne !!! Pas évident de trouver la signification de tout ce code...
A+
Cette fonction retourne le nombre de fichiers situés dans le répertoire spécifié $dir.
Elle ne prend pas en compte les sous-répertoires.
Exemple d'utilisation :
// Assigne à la variable $num_images le nombre de fichiers contenus dans le répertoire "site/images"
$num_images = count_files("site/images");
<?
function count_files($dir)
{
$num = 0;
$dir_handle = opendir($dir);
while($entry = readdir($dir_handle))
if(is_file($dir.'/'.$entry))
$num++;
closedir($dir_handle);
return $num;
}
?>
Vous pouvez spécifier un chemin de répertoire commençant par http://, ftp://,... si vous avez les droits nécessaires à la lecture des répertoires situés à distance.
voila ce que j'ai trouvé sur : http://www.phpcs.com/codes/NOMBRE-FICHIERS-DANS-REPERTO...
Sauf que maintenant je cherche les astuces pour que ca fonctionne !!! Pas évident de trouver la signification de tout ce code...
A+
- | Alerter
Contenus similaires
- Probleme echo php - Forum
- Problème echo php - Forum
- Php compter nombre fichiers - Forum
- Batch echo variable - Forum
- | Alerter
- | Alerter
- | Alerter
J'ai trouvé un tout nouveau code et celui fonctionne impécable
plus de probleme et je voulais en faire profiter tout le monde .....
au revoir
plus de probleme et je voulais en faire profiter tout le monde .....
<?
$dossiers = array("Images","Images"); // c'est la seule ligne qu'il faut mofidier !!!!!!!!
// Tu mets ton/tes dossiers qui contiennent tes images dans un array.
// Il faut 2 dossiers au minimum ou bien si il n'en existe qu'un seul, mettez 2 fois le même
$nbdossiers = count($dossiers); // Tu recuperes le nombre de dossiers
$randdossier = rand(0,($nbdossiers-1)); // tu fais un random de 0 à ton nombre de dossiers
$rdossier = $dossiers[$randdossier]; // Tu selectionnes un dossier au hasard
$rep = $rdossier."/";
$listfile = array(); // Tu crée un array vide pour y mettre tous les fichiers
$dir = opendir($rep); // Tu ouvres ton dossier
while ($f = readdir($dir)) // Tu fais une boucle des fichiers de ton dossier
{
if(is_file($rep.$f) && $f != '.' && $f != '..') // Si le fichier existe
{
$ext = substr($rep.$f,-3); // Recuperation de l'extension du fichier
if($ext == 'jpg' || $ext == 'JPG' || $ext == 'png' || $ext == 'PNG' || $ext == 'gif' || $ext == 'GIF' || $ext == 'bmp' || $ext == 'BMP')
// C'est bien une image
{
$listfile[] = $f; // Ajout du fichier dans l'array
}
}
}
closedir($dir); // Tu fermes le dossier
$nbfichier = count($listfile); // Tu comptes le nombre de fichiers
$randfichier = rand(0,($nbfichier-1)); // Tu fais un random de 0 à ton nombre de fichier
$rfichier = $listfile[$randfichier]; // Tu selectionnes un fichier au hasard
echo 'Voici l\'image aléatoire donnée :
<p> <div align="center"><img src="'. $rep.$rfichier .'" / height=600px width=600px></div>'; // modifié height et width à volonté...
?>
au revoir
- | Alerter
- | Alerter
- | Alerter
- | Alerter
function CountImgPath($path)
{
/*
Compte les images JPG PNG GIF dans les répertoires
Sauf celle du dossier miniature (/thumbs) si il est dans le même répertoire.
Si vos miniatures sont dans le même dossier vous avez 1 solutions:
diviser le résultat
structure:
Dossier_maitre:
|_dossier1:
|_image1.jpg
|_image2.gif
|_image3.png
|_dossier2:
|_image1.jpg
|_image2.gif
|_image3.png
|_dossier3:
|_image1.jpg
|_image2.gif
|_image3.png
|_dossier4:
|_image1.jpg
|_image2.gif
|_image3.png
TOTAL: 12
Peut servir également pour afficher les dossier ou les images.
*/
$count=0;
$compteur = count(glob($path."/{*.gif,*.jpg,*.png}", GLOB_BRACE));
$count = $compteur + $count;
//echo $path.' - '.$compteur.'<br/>'; //affiche le dossier
//compte les images dans les dossier recursif
if ($path[strlen($path)-1] != "/")$path .= "/";
if (is_dir($path))
{
$d = opendir($path);
$iCpt1 = substr_count ($path,'/thumbs' ); //sauf dans ce dossier.
if($iCpt1==0)
{
while ($f = readdir($d))
{
if ($f != "." && $f != "..")
{
$rf = $path . $f; // chemin relatif au fichier php
$iCpt2 = substr_count ($rf,'/thumbs' );
if (is_dir($rf)and($iCpt2==0))
{
$compteur = count(glob($rf."/{*.gif,*.jpg,*.png}", GLOB_BRACE));
$count = $compteur + $count;
//echo $rf.' - '.$compteur.'<br/>'; //affiche le dossier
}
}
}
}
closedir($d);
}
return $count;
}
- | Alerter
- | Alerter
Lassé par la pub ? Créez un compte