Php rajout fonction comment puis-je

Bonjour,

pouvez-vous m'aidez à rajouter la fonction qui me permettrais de lister les .mp3, .wav, .odt, .jpg


<?php
function listDirs($Current_Path = '.', $extension = 'pdf') {
$dirs_in_dir = array();
$files_in_dir = array();
if ($handle = opendir($Current_Path)) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
$path = $Current_Path.'/'.$file;
if (is_dir($path)) {
$dirs_in_dir[]=$path;
} else {
$files_in_dir[]=$file;
}
}
}
}
closedir($handle);
$nb_files = count($files_in_dir) > 0;
$nb_dirs = count($dirs_in_dir) > 0;
if($nb_files || $nb_dirs) {
echo '<ul>'."\n";
// Si des fichiers existent...
if($nb_files) {
foreach ($files_in_dir as $file) {
$pathinfo = pathinfo($file);
if ($pathinfo['extension'] == $extension) {
$href = $Current_Path.'/'.$file;
echo '<li><a href="'.$href.'">'.$file.'</a></li>'."\n";
} else {
echo '<li>'.$file.'</li>'."\n";
}
}
}
// Si des dossiers existent...
if($nb_dirs) {
// Tri inverse
rsort($dirs_in_dir);
foreach ($dirs_in_dir as $dir) {
echo '<li><h2 class="title">'.substr(strrchr($dir, "/"), 1).'</h2>';
listDirs($dir);
echo '</li>'."\n";
}
}
echo '</ul>'."\n";
}
}

listDirs();
?>

1 réponse

  1. Modérateur
    Bonjour,

    Je ne comprend pas ta question....
    Il suffit de passer des paramètres à ta fonction..... par defaut..elle cherche les PDF... mais si tu l'appelles de cette façon:
    /* lister les fichiers MP3 du dossier courant */
    
    listDirs('.','mp3'); 
    


    Cordialement,
    Jordane
    0
    1. Donc si je procède ainsi cela est bon ?

      function listDirs($Current_Path = '.' ,' mp3' ) {
      $dirs_in_dir = array();
      $files_in_dir = array();
      if ($handle = opendir($Current_Path)) {
      while (false !== ($file = readdir($handle))) {
      if ($file != "." && $file != "..") {
      $path = $Current_Path.'/'.$file;
      if (is_dir($path)) {
      $dirs_in_dir[]=$path;
      } else {
      $files_in_dir[]=$file;
      }
      }
      }
      }
      0
    2. Modérateur
      @Noel-barbuNon....
      il te suffit juste de mettre mp3 QUAND tu appelles la fonction .... comme je te l'ai écrit.
      0
    3. @jordane45ahh comme ça !
      listDirs($Current_Path = '.', $extension = 'pdf','mp3','wav')


      ou comme ça :
      listDirs($Current_Path = '.','pdf','mp3'  $extension = 'wav')


      car si je fais comme cela ça ne fonctionne pas:
      listDirs($Current_Path = '.','pdf','mp3','wav')


      etc ....
      0
    4. Modérateur
      @Noel-barbuTa fonction actuellle ne permet de traiter qu'une extension à la fois...
      si tu veux en mettre plusieurs il va falloir y faire quelques modifications. ..
      0
    5. @jordane45mouais ok ....
      0