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

3

我有一个问题,需要从文件夹(在这种情况下名为“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

它可以工作,因为它从文件夹中读取内容。 但是我该如何避免显示前两行? 那两行是什么?为什么会显示出来?


1
.=>当前文件夹;..=>上一级文件夹 - STT LCU
&& $file[0] != '.' <-- 也不包括隐藏文件 - Prasanth
3个回答

3

试试这个:

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

太棒了!我最近才加入这个社区,非常惊讶它是多么高效和快速!谢谢你们! - FrancescoMussi

2
添加一个条件:

如果($file === "." || $file === ".."),则跳过;


0

试试这个:

<?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 ;
    }
}

?>

如果您想将一个样式应用于文件,另一个样式应用于文件夹,则可以使用此方法。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接