列表目录:Opendir()

时间:2012-10-15 18:39:33

标签: php list opendir

我正在编写一个小脚本,我想列出目录的内容,将它们变成超链接,然后编辑这些超链接看起来很漂亮(即不显示丑陋的超长路径名),然后限制数字文件回显给浏览器。另外,我需要回传最新的文件。

我正在考虑使用它:

<?php
 $path = "/full/path/to/files";
 if ($handle = opendir($path)) {
   while (false !== ($file = readdir($handle)))
          {
                  if ($file != "." && $file != "..")
          {
                          $files .= '<a href="'.$file.'">'.$file.'</a>';
                  }
           }
  closedir($handle);
  }
?>

或者这个:

<?php
$sub = ($_GET['dir']);
$path = 'enter/your/directory/here/';
$path = $path . "$sub";
$dh = opendir($path);
$i=1;
while (($file = readdir($dh)) !== false) {
        if($file != "." && $file != "..") {
                        if (substr($file, -4, -3) =="."){
                        echo "$i. $file <br />";
                        }else{                  
                echo "$i. <a href='?dir=$sub/$file'>$file</a><br />";
                  }
                $i++;
        }
}
closedir($dh);
?>

但我不想列出这样的文件:

C:/example/example2/Hello.pdf

我想编辑变量。那可能吗?让它说出像“你好”这样简单的东西。

我想限制列出的文件数量。例如:仅列出前5个文件,或最后5个,等等。是否有函数或某种参数?

我感谢任何帮助或推动正确的方向。谢谢

1 个答案:

答案 0 :(得分:1)

我在手机上,所以提供一个代码示例将很难。为什么不遍历目录,将文件名存储在数组中,绝对路径作为该键的值?

编辑:您可以使用basename来帮助您完成此操作。