PHP list of specific files in a directory

2019-01-02 20:47发布

The following code will list all the file in a directory

<?php
if ($handle = opendir('.')) {
    while (false !== ($file = readdir($handle)))
    {
        if (($file != ".") 
         && ($file != ".."))
        {
            $thelist .= '<LI><a href="'.$file.'">'.$file.'</a>';
        }
    }

    closedir($handle);
}
?>

<P>List of files:</p>
<UL>
<P><?=$thelist?></p>
</UL>

While this is very simple code it does the job.

I'm now looking for a way to list ONLY files that have .xml (or .XML) at the end, how do I do that?

8条回答
余欢
2楼-- · 2019-01-02 21:23

You should use glob.

glob('*.xml')

More about using glob and advanced filtering:

http://domexception.blogspot.fi/2013/08/php-using-functional-programming-for.html

查看更多
只若初见
3楼-- · 2019-01-02 21:26

I use this code:

<?php

{
//foreach (glob("images/*.jpg") as $large) 
foreach (glob("*.xml") as $filename) { 

//echo "$filename\n";
//echo str_replace("","","$filename\n");

echo str_replace("","","<a href='$filename'>$filename</a>\n");

}
}


?>
查看更多
登录 后发表回答