Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people, just like you, are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
Solved

display from directory

Posted on 2008-06-24
5
172 Views
Last Modified: 2010-04-06
Hi,

I need to know how I can get last ten file in the directory using PHP ?? Thanks
0
Comment
Question by:usmbay
  • 2
  • 2
5 Comments
 
LVL 1

Expert Comment

by:Neoific
ID: 21856557
How do you want them to be sorted?
0
 
LVL 1

Expert Comment

by:morristhebear
ID: 21858664
I've just written this for you, hopefully it will do the trick.  It's a function that returns the last 10 files modified in a given directory.  It has an optional parameter so you can specify how many files to return, if left blank, it defaults to 10.  The files are returned sorted in descending order.  You could list the files using a foreach loop.

E.G:

$files = list_files ("C:\\");
foreach ($files as $k => $v) {
    echo "$v<br />\n";
}

Hope this helps.

More Example Usage:

print_r ( list_files ("C:\\"));    //  Lists the last 10 modified files in the C:\ drive.
print_r ( list_files ("C:\\Program Files\\", 20));   // Lists the last 20 modified files in Program Files


<?php
	
	function list_files ($string_dir, $int_limit = 10) {
		$files = array();
		//	Get all the files in the directory, along with the last modified date.
		if ($dir_handle = opendir ($string_dir)) {
			while (false !== ($file = readdir ($dir_handle))) {
				$files[date("YmdHis", filemtime($string_dir . $file))] = $file;
	    	}
	    	krsort ($files);
	    	$files = array_chunk ($files, $int_limit, true);
	    	return $files[0];
		}
		return false;
	}
?>

Open in new window

0
 

Author Comment

by:usmbay
ID: 21860178
in this query the file_name represent the file name but the problem is the pdf_files includes all the files name either exist or not so when I excute the query it return all files name but  they're not physically exist
so I need to return file_name physically exist only in the directory

SELECT      file_name  FROM pdf_files;

file_name from the database
101
102
103
104
105

but what's in the directory is till 103 only so in the query return only up to 103.pdf  

Thanks
0
 
LVL 1

Accepted Solution

by:
morristhebear earned 500 total points
ID: 21860289
OK.  You can use the file_exists function with a loop and break out of it once you find a file that isn't found.  The snippet below should send you in the right direction, you will need to change the file_exists part where it says path to point to your directory where the PDF files are stored.

Hope this helps.
<?php
	
	$query = "SELECT file_name FROM pdf_files";
	while ($row = mysql_fetch_array($query)) {
		if (file_exists('path' . $row['file_name'] . '.pdf')) {
			echo $row['file_name'] . "<br />\n";
		} else {
			break;
		}
	}
	
?>

Open in new window

0
 

Author Comment

by:usmbay
ID: 22000811
ok it works but it return the files from last year it's log list , is there a way to return last 10 file only
Thanks
0

Featured Post

Announcing the Most Valuable Experts of 2016

MVEs are more concerned with the satisfaction of those they help than with the considerable points they can earn. They are the types of people you feel privileged to call colleagues. Join us in honoring this amazing group of Experts.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
What does this formatting equate to? 7 18
Inserting data into database 10 34
if (is_singular not working 5 18
Use Select Query to Return Results as a Form 9 23
Password hashing is better than message digests or encryption, and you should be using it instead of message digests or encryption.  Find out why and how in this article, which supplements the original article on PHP Client Registration, Login, Logo…
These days, all we hear about hacktivists took down so and so websites and retrieved thousands of user’s data. One of the techniques to get unauthorized access to database is by performing SQL injection. This article is quite lengthy which gives bas…
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
Use Wufoo, an online form creation tool, to make powerful forms. Learn how to choose which pages of your form are visible to your users based on their inputs. The page rules feature provides you with an opportunity to create if:then statements for y…

839 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question