我有一个问题,我创建了一个完美的画廊,但是对图像进行排序的功能取决于它们DAY只会忽略嘴巴和分钟...... 用于排序的表单是::::: | d / m / Y H:i:s |,但是当我搬到另一个嘴里时,我失去了订单,因为它只取决于我所说的那天我想要考虑到嘴巴。
$date = date ("d/m/Y H:i:s",filemtime($dir_mini)); function sortFunctionASC ( $a , $b ) { return strcmp($a["date"], $b["date"]); }
在这里,我给出了对画廊进行排序的部分
//Boucle sur le répertoire On extrait aussi le Nom de l'image et de la miniature
$images = array();
while ( false !== ($Fichier = readdir($ouverture)))
{
$berk = array('.', '..');
$dir_mini = $dos_mini.$Fichier;
$dir_img = $dos_img.$Fichier;
$img_name = $dir_mini ;
$img_name = preg_replace('#jpg|png|jpg|mini|/|\.#i', '',$img_name);
$date_precise = date ("d/F/Y-H:i",filemtime($dir_mini));
$date = date ("d/m/Y H:i:s",filemtime($dir_mini));
if(!in_array($Fichier, $berk) AND !is_dir($dir_mini) AND !is_dir($dir_img) )
{
$image = array();
$image['date_precise'] = $date_precise;
$image['date'] = $date;
$image['img'] = $dir_img;
$image['thumb'] = $dir_mini;
$images[] = $image;
}
}
closedir($ouverture);
// Cette deux fonctions trient les images en fonction de date ASC croissant, DESC décroissant
function sortFunctionASC ( $a , $b ) { return strcmp($a["date"], $b["date"]); }
function sortFunctionDESC( $b , $a ) { return strcmp($a["date"], $b["date"]); }
if (isset ($_GET['ASC'])) { usort ($images,"sortFunctionASC"); }
if (isset ($_GET['DESC'])) { usort ($images,"sortFunctionDESC"); }
if (!isset($_GET['ASC']) AND !isset($_GET['DESC'])) { usort ($images,"sortFunctionDESC") ;}
答案 0 :(得分:0)
我认为您应该将日期转换为时间戳以进行排序。这么简单,使用filemtime(string $ filename)没有日期(“d / m / Y H:i:s”......东西
function sortFunctionASC ( $a , $b ) { return $a["stamp"] < $b["stamp"]); }
function sortFunctionDESC( $b , $a ) { return $a["stamp"] < $b["stamp"]); }