note 68083 deleted from function.readdir by tularis
| From: | tularis@php.net | Date: | Sun, 13 May 2007 19:00:37 +0000 |
| Subject: | note 68083 deleted from function.readdir by tularis | ||
| References: | 1 | Groups: | php.notes |
| Request: | Send a blank email to php-notes+get-126508@lists.php.net to get a copy of this message | ||
Note Submitter: ugo.quaisse at gmail.com
----
Upgrade of davistummer's code :
You can now list your folder by date
you need to rename your file with this syntax :
"name_-_YYYY-mm-dd.ext"
<?php
function trierdossier($dirname, $sortby, $sortdir) {
$ext = array("jpg", "png", "jpeg", "gif", "pdf",
"doc", "txt", "xls");
$files = array();
if($handle = opendir($dirname)) {
while(false !== ($file = readdir($handle))){
for($i=0;$i<sizeof($ext);$i++){
if(stristr($file, ".".$ext[$i])){ //NOT case sensitive: OK with JpeG, JPG,
ecc.
$filesize = filesize($dirname . "/" . $file);
$date3 = explode("_-_",$file);
$date2 = explode(".pdf",$date3[1]);
$date1 = $date2[0];
$date0 = tostamp($date1);
if($filesize){
$files[] = array(
"name" => $file,
"size" => $filesize,
"date" => $date0
);
}
}
}
}
closedir($handle);
}
//obtain an array of columns
foreach ($files as $key => $row) {
$name[$key] = $row['name'];
$size[$key] = $row['size'];
$date[$key] = $row['date'];
}
return array_multisort($$sortby, $sortdir, $files) ? $files : false;
}
//end
?>
<?php
//affichage
$sortby = "date"; // sort-by column; accepted values: name OR width OR height OR size
$path = "../upload/argumentaires/lcp/"; // path to folder
$sortdir = SORT_DESC; // sorting order flags; accepted values: SORT_ASC or SORT_DESC
$files = trierdossier($path, $sortby, $sortdir);
foreach ($files as $file){
echo $file['name'];
echo $file['date'];
echo $file['size'];
}
?>