2010-12-30 6 views

答えて

2
foreach(glob('path/to/directory/file/*') as $file) 
     echo $file,"\n"; 
} 

か、単に

print_r(glob('path/to/directory/file/*')); 
+0

それは非常に良いですが、そのようなパス "path/to/directory/file /*.*"のようにする必要があります – faressoft

2

から:PHP: List Contents of a Directory
代わり"."のディレクトリ・パスを置きます。あなたが使用することができます

// 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

(Linuxでは.で始まる)、それは隠しファイルを表示しないことに注意してください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; 
} 
3

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()); 
    } 
} 
+0

絶対パスである必要はありません。質問はファイルを要求するので、 'isFile()'メソッドを使ってチェックするだけで十分です。そして、それは価値があるため、['FilesystemIterator'](http://php.net/filesystemiterator)はデフォルトでドットファイルをスキップします。 – salathe

関連する問題