How to list Files in a directory and generate web
URLS with PHP
I needed a short PHP script that
reads all, my .html
files in a directory and then generates html a hrefs links pointing
to each of the html files stored in the directory.
Here is the short code I come up:
$directory_to_open="my-dir/";
$max_files=100;
$i=0;
if ($handle = opendir("$directory_to_open")) {
while (false !== ($file = readdir($handle)) && $i <=
$max_files)
{
$i=$i+1;
if ($file != "." && $file != "..")
{
$thelist .= '| '.str_replace(".html","",$file).' |';
echo "$thelist"; }
}
closedir($handle);
}
In my case the directories with html were planned to contain, less
than 100 files a directory, so in order to show links to only the
first 100 files in the directory, I used the
$max_files=100
and a check if value is reached in the while loop. For anyone who
want to build html you see in above while if $max_files is reached
then the while loop exits.
Because by default the files returned contained the naming format
file_name.html, whether I wanted to show only the file name
without the
.html extensions used
str_replace(); to
get rid of file extensions string.