Ciao a tutti sto utilizzando uno script che un altro utente di HTML mi aveva passato per elencare dei file in una directory.
Per esercitarmi l'ho modificato in alcune sue parti ma ora vorrei riuscire ad ordinare per data i file contenuti nella directory.
In tutti i file (.txt) sono contenute delle informazioni che io come potete vedere richiamo utilizzando la funzione preg_match.
La data è preceduta da <data> e seguita da </data>.
Come faccio a richiamarle tutte e a "dire" allo script di visualizzarmele in ordine?
Ecco il codice:
Grazie in anticipo per l'aiuto!Codice PHP:
function dir_list($directory = FALSE) {
$dirs= array();
$files = array();
if ($handle = opendir("./" . $directory)) {
while ($file = readdir($handle)) {
if (is_dir("./{$directory}/{$file}")) {
if ($file != "." & $file != "..") $dirs[] = $file;
} else {
if ($file != "." & $file != "..") $files[] = $file;
}
}
}
closedir($handle);
reset($dirs);
sort($dirs);
reset($dirs);
reset($files);
sort($files);
reset($files);
while(list($key, $value) = each($files))
{
$contents = file_get_contents($directory.$value);
preg_match ("/<name>([^`]*?)<\/name>/", $contents, $matches_name);
preg_match ("/<price>([^`]*?)<\/price>/", $contents, $matches_price);
preg_match ("/<dove>([^`]*?)<\/dove>/", $contents, $matches_dove);
preg_match ("/<pic1>([^`]*?)<\/pic1>/", $contents, $matches_pic1);
echo "
<a href='open_prod.php?file=".$value."'><div id='tab_file'><table width='100%' border='0' cellpadding='0'> <tr>
<td width='20%'>[img]writer_dir/catalog/img/". $matches_pic1[1]."[/img]</td>
<td width='60%'>[b]".$matches_name[1]."[/b]</td>
<td width='20%'><h3>€ ".$matches_price[1]."</h3>[b]".$matches_dove[1]."[/b]</td>
</tr></table></div></a>"; }
}
dir_list("writer_dir/catalog/prod/");