php echo имена файлов в каталоге?

0

Я использую следующий код php, чтобы отобразить имена (и расширения) всех файлов в папке.

Это отлично работает, и я делаю результаты в таблице так:

код:

<?php
$dir = new DirectoryIterator("data/uploads/");
foreach ($dir as $fileinfo) {
echo '<table><tr><td><p>' . $fileinfo->getFilename() . "\n" . '</p></td><td><p>Existing File</p></td><td><p>Delete</p></td></tr><tr></tr></table>';
 }?>

результат:

.                     Existing File         Delete
..                    Existing File         Delete
Filename1.jp          Existing File         Delete
Filename2.jp          Existing File         Delete
Filename3.jp          Existing File         Delete

Проблема в моих результатах, я также получаю эти странные точки наверху. Я не знаю, почему это показано, поскольку у меня есть только 3 файла в каталоге и не знаю, откуда взялись точки?

Кто-нибудь может помочь с этим? благодаря

  • 0
    «Странные точки» фактически являются указателями на текущий каталог и предыдущий каталог. В большинстве файловых систем вы можете сделать что-то вроде cd .. чтобы перейти на один каталог, и поэтому такие функции, как glob, включают их.
Теги:
file

2 ответа

0
Лучший ответ

Добавить условие, чтобы проверить, что это файл или нет.. попробуйте этот код

if ($fileinfo->isFile()) {  // add this condition
    echo '<table><tr><td><p>' . $fileinfo->getFilename() . "\n" . '</p></td><td><p>Existing File</p></td><td><p>Delete</p></td></tr><tr></tr></table>';
}
0

Добавьте условие и проверьте, есть ли это. или.. если он удовлетворяет условию, продолжайте свой looop

Ещё вопросы

Сообщество Overcoder
Наверх
Меню