Как напечатать имена всех файлов в папке «file» с помощью php - PullRequest
0 голосов
/ 30 декабря 2010

Как напечатать имена всех файлов в папке "file" с помощью php?

/file/

Ответы [ 4 ]

3 голосов
/ 30 декабря 2010

DirectoryIterator

$dir = new DirectoryIterator('/file/');   <-- remember to put in absolute path
foreach ($dir as $fileinfo) 
{
  if (!$fileinfo->isDot() && $fileinfo->getType()!='dir') 
  {
    var_dump($fileinfo->getFilename());
  }
}
2 голосов
/ 30 декабря 2010
foreach(glob('path/to/directory/file/*') as $file)
        echo $file,"\n";
}

или просто

print_r(glob('path/to/directory/file/*'));
2 голосов
/ 30 декабря 2010

От: PHP: список содержимого каталога
Путь к каталогу вместо ".".Обратите внимание, что он не отображает скрытые файлы (начиная с . в Linux)

 // open this directory 
$myDirectory = opendir(".");

// get each entry
while($entryName = readdir($myDirectory)) {
 $dirArray[] = $entryName;
}

// close directory
closedir($myDirectory);

// count elements in array
$indexCount = count($dirArray);
Print ("$indexCount files<br>\n");

// sort 'em
sort($dirArray);

// print 'em
print("<TABLE border=1 cellpadding=5 cellspacing=0 class=whitelinks>\n");
print("<TR><TH>Filename</TH><th>Filetype</th><th>Filesize</th></TR>\n");
// loop through the array of files and print them all
for($index=0; $index < $indexCount; $index++) {
        if (substr("$dirArray[$index]", 0, 1) != "."){ // don't list hidden files
  print("<TR><TD><a href=\"$dirArray[$index]\">$dirArray[$index]</a></td>");
  print("<td>");
  print(filetype($dirArray[$index]));
  print("</td>");
  print("<td>");
  print(filesize($dirArray[$index]));
  print("</td>");
  print("</TR>\n");
 }
}
print("</TABLE>\n");
1 голос
/ 30 декабря 2010

вы можете использовать glob

$folder = "file";
$mask = "*.*";
$files = glob("" . $folder . $mask);
foreach ($files as $file)
{
   $file_name = basename($file,substr($mask,1));  // cut the folder and extension
   echo  $file_name;
}
...