

Nov 2nd, 2008
Maruf scribbled this post.
Maruf scribbled this post.
I’m working on a website for a client at the moment, and one of the features I need to do is display a bunch of images in a particular directory.
It’s actually a very simple process in PHP and only requires a small amount of code. I’ve seen a lot of examples on other forums/websites that use a ridiculous amount of code to get the same result, and i’m not quite sure why.
Here’s how to list all files in a directory
View Code PHP
1 2 3 4 5 6 7 8 9 10 11 | //path to directory to scan $directory = "../images/team/harry/"; //get all image files with a .jpg extension. $images = glob("" . $directory . "*.jpg"); //print each file name foreach($images as $image) { echo $image; } |
It’s as easy as that.
Notes
The .jpg extension can be changed to any extension. So if you want to pull out only .txt files, you just need to replace the .jpg with .txt. If you want to list ALL files, just remove the condition.
Filed away: PHP










comments
Thanks that example helped me a lot!
Simple and powerful. Thanks, it has helped me too!
Very helpful post… Thanks.
Mehedi Hasan
One of the best posts I’ve seen for some time, thanks a lot.
Great code, to get better support use
$images = glob(“” . $directory . “{*.jpg,*.gif,*.png}”, GLOB_BRACE);
Thanks!
Code at its best – short, sweet and easy to understand!
Thanks
How about listing files by date modified?
It solved my problem.
Thank you.
Is it possible to get the absolute path of a file which is located in any location of the system using php.
So Helpful. Thanks a Lot. It helped me to show a list of news in flat files.
Hi mate, great script.. thank you! Just wondering, how would I go about displaying the images in order? For example if they were named 1.jpg – 10.jpg?
Thanks
Matt
hey everyone, here’s a function to output certain image types, with the option to put its name under the image. -sam
function list_images($folder,$type,$listnames){
$ext = ($type === ‘all’) ? ‘{*.jpg,*.gif,*.png}’ : ‘*.’.$type;
$files = glob($folder.$ext, GLOB_BRACE);
sort($files);
foreach ($files as $file) {
if ($file “.” && $file “..” && !preg_match(“/^hide/i”,$file)){
echo ”;
echo $listnames ? ”.str_replace($folder, ”, $file).” : ”;
}
}
}
say I want to list all jpg with name underneath—
list_images(‘./’,'jpg’, true);
or if I want to list all images with no name output–
list_images(‘./’,'all’, false);