1. <?php
  2. /*********************************************************
  3. Code par lepiaf-blog.com
  4. Lecture et affichage des fichiers d'un dossier en PHP
  5. Sous Licence GNU GPL v2
  6. http://www.gnu.org/licenses/old-licenses/gpl-2.0.html
  7. *********************************************************/
  8.  
  9. /* Fonction permettant l'affichage de l'unité */
  10. function displaySize($file){
  11. $size[0] = filesize($file);
  12. $size[1] = $size[0]/1000;
  13. $size[2] = $size[1]/1000;
  14. $size[3] = $size[2]/1000;
  15.  
  16. $unite = array("octet","Ko","Mo","Go");
  17.  
  18. for($i=0;$i <= 3;$i++)
  19. {
  20. if(strlen(intval($size[$i])) < 4)
  21. {
  22. $float = explode(".",$size[$i]);
  23. $float[1] = substr($float[1],0,2);
  24. echo $float[0].'.'.$float[1].' '.$unite[$i];
  25. break;
  26. }
  27. }
  28. }
  29.  
  30. /*Extraire l'extension pour pouvoir afficher la bonne icoe */
  31. function dispExtension($filename){
  32. $extension = explode(".",$filename);
  33. $icone = array("css","doc","exe","jpg","f4v","flv","fla","ini","js","mp3",
  34. "mpg","pdf","ppt","psd","rar","swf","txt","wmp","xls","xml","zip");
  35.  
  36. if(in_array($extension[1],$icone)){
  37. echo $extension[1]; //Extension reconnu parmis le tableau, afficher son icone
  38. } else {
  39. echo file; //Sinon afficher une icone par defaut
  40. }
  41. }
  42.  
  43.  
  44. $scan = scandir(".");
  45. $exclure = array(".","..", "index.php","icone","favicon.ico"); //Exclure des fichiers/dossiers du scan
  46. $i = 0;
  47. while($scan[$i]){
  48. if(!in_array($scan[$i], $exclure)){ //Si le fichier fait parti de la liste des exclus, ne pas afficher
  49. if(substr($scan[$i],0, 1) != "."){ //Si un fichier commence par un point, l'exclure de l'affichage
  50. ?>
  51. <tr>
  52. <td width="650">
  53. <a href="<?php echo $scan[$i]; ?>">
  54. <img src=icone/<?php dispExtension($scan[$i]); ?>.png /><?php echo $scan[$i]; ?>
  55. </a>
  56. </td>
  57. <td width="150">
  58. <?php echo date("Y-M-d", filemtime($scan[$i])); ?>
  59. </td>
  60. <td>
  61. <?php echo displaySize($scan[$i]); ?>
  62. </td>
  63. </tr>
  64. <?php
  65. }
  66. }
  67. $i++;
  68. }
  69. ?>

Télécharger les icones : icone.zip