Uusimman tiedoston saan näin:
#Asetetaan muuttuja uusinta tiedostoa varten
$y = 0;
foreach($filenames as $arvo)
{
$picture = $imgfolder."/".$arvo;
#Tarkistetaan, että tiedostopääte on varmisti jpg ja tiedosto muutenkin sallittu
if ($arvo != "." && $arvo != ".." && (substr($arvo,-3) == "jpg"))
{
#Etsitään uusin tiedosto
if(filemtime($picture) > $y)
{
$y = filemtime($picture);
$yf = $arvo;
}
}
}
Mutta miten saan viisi uusinta tiedostoa muuttujiin $yf - $yj.
#Asetetaan muuttuja uusinta tiedostoa varten
$y = 0;
foreach($filenames as $arvo)
{
$picture = $imgfolder."/".$arvo;
#Tarkistetaan, että tiedostopääte on varmisti jpg ja tiedosto muutenkin sallittu
if ($arvo != "." && $arvo != ".." && (substr($arvo,-3) == "jpg"))
{
#Etsitään uusin tiedosto
if(filemtime($picture) > $y)
{
$y = filemtime($picture);
$yf = $arvo;
}
}
}
Mutta miten saan viisi uusinta tiedostoa muuttujiin $yf - $yj.
Vastaukset 1
Vanhimmat
function LoadFiles($dir)
{
$Files = array();
$It = opendir($dir);
if (! $It)
die('Cannot list files for ' . $dir);
while ($Filename = readdir($It))
{
if ($Filename == '.' || $Filename == '..')
continue;
$LastModified = filemtime($dir . $Filename);
$Files[] = array($dir .$Filename, $LastModified);
}
return $Files;
}
function DateCmp($a, $b)
{
return ($a[1] < $b[1]) ? -1 : 0;
}
function SortByDate(&$Files)
{
usort($Files, 'DateCmp');
}
$Files = LoadFiles('data/');
SortByDate($Files);
ton jälkeen tiedostot on järjestyksessä $Files-taulukossa. Otat sieltä 5 ekaa