Using this function on Win98 made me grow grey hair.
Win 98 doesn't save the time for the last access. It only saves the date. This way, the returned timestamp from fileatime(file) is always much too small.
this command will always return false:
if($now - $last_access >1800) {
do something
}
using filemtime() instead did the thing.
fileatime
(PHP 4, PHP 5)
fileatime — Prende l'ora dell'ultimo accesso al file
Descrizione
Restituisce l'ora in cui il file ha ricevuto l'ultimo accesso, o FALSE in caso di errore. L'ora viene restituita come un timestamp Unix.
N.B.: Si suppone che l'atime di un file cambi ogni volta che i blocchi di dati del file vengono letti. Ciò può risultare costoso per le performance quando una applicazione accede con regolarità ad un numero elevato di file o directory. Alcuni filesystem Unix possono essere montati con l'aggiornamento dell'atime disabilitato per aumentare le performance di tali applicazioni; Gli spool delle news USENET costituiscono un esempio frequente. In tali filesystem queste funzioni sono inutili.
Nota: I risultati di questa funzione saranno memorizzati. Vedere clearstatcache() per maggiori dettagli.
A partire da PHP 5.0.0, questa funzione può essere utilizzata con alcuni URL wrappers. Fare riferimento a List of Supported Protocols/Wrappers per la lista di quali wrappers supportano le funzioni della famiglia stat().
Example #1 Esempio per fileatime()
<?php
// visualizza, ad esempio, che somefile.txt è stato aperto il: December 29 2002 22:16:23.
$filename = 'somefile.txt';
if (file_exists($filename)) {
echo "$filename è stato aperto il: " . date("F d Y H:i:s.", fileatime($filename));
}
?>
Vedere anche filemtime(), fileinode() e date().
fileatime
10-Oct-2004 09:12
