Bonjour,
Je solicite votre aide sur un petit problème que je n'arrive pas à régler avec le fonctionnement d'une boucle FOREACH en PHP, tout d'abord voici mon code (un peu long):
Et maintenant voici ce qu'il affiche :
Voilà, donc mon soucis c'est que je voudrais que sur la dernière valeure du tableau $ext, au lieu de lancer la commande
Merci de votre aide et à bientôt je l'espère !
Modifié par cocochepeau (17 May 2012 - 21:04)
Je solicite votre aide sur un petit problème que je n'arrive pas à régler avec le fonctionnement d'une boucle FOREACH en PHP, tout d'abord voici mon code (un peu long):
<?php
function f_count_files($folder, $ext, $subfolders) {
if(substr($folder, -1) != '/')
$folder .= '/';
$array = 0;
if(is_array($ext))
$array = 1;
$rep=@opendir($folder);
if(!$rep)
return 0;
$nb_files = 0;
while($file=@readdir($rep))
{
if($file == '.' || $file == '..')
continue;
if(is_dir($folder . $file) && $subfolders)
$nb_files += f_count_files($folder . $file, $ext, 1);
else if(!$array && substr($file, -strlen($ext))== $ext)
$nb_files++;
else if($array==1 && in_array(strtolower(substr(strrchr($file,'.'),1)), $ext))
$nb_files++;
}
closedir($rep);
return $nb_files;
}
//
$ext=array('txt', 'png', 'gif', 'jpg', 'jpeg');
$folder='uploads/';
foreach($ext as $list)
{
echo "['";
echo $list;
echo "', ";
echo f_count_files($folder, $list, 1);
echo "], ";
}
?>
Et maintenant voici ce qu'il affiche :
['txt', 96], ['png', 0], ['gif', 0], ['jpg', 13], ['jpeg', 0][#red], [/#]
Voilà, donc mon soucis c'est que je voudrais que sur la dernière valeure du tableau $ext, au lieu de lancer la commande
echo "], ";
il lance la commande echo "]";
de sorte à ce qu'il n'y ai pas la virgule en trop à la fin de l'affichage.Merci de votre aide et à bientôt je l'espère !
Modifié par cocochepeau (17 May 2012 - 21:04)