Hoi,

Ik weet dat het mogelijk moet zijn om mappen te sorteren op aanmaak datum.

maar ik weet even niet meer hoe. . .
het gaat dus om de mappen op de server. niet uit een database.

Ik heb de file functies bekeken.
Maar als ik probeer om de functie om de tijd van een file te krijgen dan wil die dat niet op een map doen.
Ik zoek dus eigenlijk iets vergelijkbaars aan de functie om de datum van de laatste wijziging van een bestand te krijgen.

Alleen nu voor een map.
Iemand nog een idee?
Is er helemaal niemand die me hier mee kan helpen?
Als het niet op een map wil, probeer dan met behulp van dezelfde pagina's eens om alle files in de map te lezen, bij het lezen van elke file, haal je per file de datum op, die stop je in een array, array sorteren, die echo'en en voila :)
Ik heb nu de aanmaak datum op het scherm.
Dat is gelukt met het volgende scriptje


<?php
$path =  './';

echo "<table>";

	$file_array = array();
	$hndl = @opendir($path);
	while (($file=readdir($hndl)) !== false)
	{
		if ($file != '.' && $file != '..')
		{
			$file_array[] = $file;
		}
	}
	closedir($hndl);


for ($i=0; $i<count($file_array); $i++)
//display the list of files
{
	$value = $file_array[$i];
	$date_m_array[] = filemtime($value);
	$datum = date('d-M-Y', $date_m_array[$i]);

if(is_dir($value)) 
	{
	echo "<tr><td><a href='$value'>$value</a></td>";
	echo "<td>$datum</td></tr>";
	}
}
echo "</table>";
?>


Nu moet ik alleen nog even sorteren.
En dan het liefst van nieuwste naar oudste.
Dus de nieuwste bovenaan.

Kan iemand me daar even mee helpen?
Dit lijkt te werken:
<?php

$path = './';

$files = array();

$handle = opendir($path);

while(($file=readdir($handle)) !== false){
if ($file != '.' && $file != '..' && is_dir($file)){
$files[date('Y-m-d', filemtime($file))] = $file;
}
}

closedir($handle);

ksort($files);

echo '<pre>'.PHP_EOL;
print_r($files);
echo '<pre>'.PHP_EOL;

?>

Reageren