文件管理器-读取文件夹的内容


file manager - reading content of a folder

我有一个问题,从文件夹(在这种情况下称为'upload')读取文件:

脚本如下:

<div id="content">
        <?php
             echo "<h2> These is the list of the files: </h2>";
             $dir = dir("upload");
             while (($file = $dir->read()) !== false) {
                echo "<p>File name: " . $file . "</p>";
              }

              $dir->close();
          ?>
</div>

结果是:

These is the list of the files:
File name: .
File name: ..
File name: prova.txt
File name: prova2.txt
File name: prova3.txt
File name: prova4.txt

它工作,因为正在从文件夹中读取内容。但是我怎样才能避免显示前两行呢?这两条线是什么?为什么要展示它们?

试试这个:

while (($file = $dir->read()) !== false) 
{
    if($file != '.' && $file != '..')
    {
        echo "<p>File name: " . $file . "</p>";
    }
}

添加条件:

if($file === "." || $file === "..") continue;

试试这个:

<?php
$path = '/your/path';
$results = scandir($path);
foreach ($results as $result) {
    if ($result === '.' or $result === '..') continue;
    if (is_dir($path . '/' . $result)) {
        echo $result;
    }elseif (is_file($path . '/' . $result)) {
        echo  $result ;
    }
}
?>

如果你想对文件应用一种样式,而对文件夹应用另一种样式

,则使用此方法。