rab Posted May 10, 2006 Share Posted May 10, 2006 [code]<?$y = 0;if ($handle = opendir('.')) { while (false !== ($file = readdir($handle))) { if ($file != "." && $file !=".." && $file != "_private" && $file != "_vti_bin" && $file != "_vti_cnf" && $file != "_vti_pvt" && $file != "_vti_txt" && $file != "_vti_log" && $file != "cgi-bin" && $file != ".ftpquota" && $file != ".htaccess" && $file != "sniffer") { $lastmod = date('[d-m-y//g-i-s-a]' , filemtime($file)); $z[$y] = $lastmod; $q[$y] = $file; $y++; } } closedir($handle); } sort($z);$size = (sizeof($z) - 1);echo $z[$size];echo $q[$size];?> [/code]This works to an extent, i can sort the date, but i can't sort the file accordingly to the date. Is there anyway to do this? Quote Link to comment Share on other sites More sharing options...
rab Posted May 13, 2006 Author Share Posted May 13, 2006 Doesn't Anyone know this? Quote Link to comment Share on other sites More sharing options...
Zubaz Posted May 13, 2006 Share Posted May 13, 2006 You need to output your date string in a manner that will sort numerically.06042006 for June 4th 2006 won't sort like you want it to.20060604 will sort correctly, because the heirarchy is in the same direction.06042006 > 03042008 (wrong)20060604 < 20080304 (right!)After that just do something like assign to an array with the date as the key and then do a ksort.[code](inside your while loop)$filesArray[$date] = $filename;(end while loop)ksort($filesArray);echo '<pre>';print_r($filesArray);echo '</pre>[/code][a href=\"http://www.php.net/ksort\" target=\"_blank\"]ksort() on php.net[/a] Quote Link to comment Share on other sites More sharing options...
rab Posted May 13, 2006 Author Share Posted May 13, 2006 OMG I forgot about keys in arrays! Thanks!<3 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.