title besides title

 

Sunday, November 25, 2012

PHP : Directories - [19.2] Getting and Setting File Timestamps

19.2.1 Problem

You want to know when a file was last accessed or changed, or you want to update a file's access or change time; for example, you want each page on your web site to display when it was last modified.

19.2.2 Solution

The fileatime( ) , filemtime( ), and filectime( ) functions return the time of last access, modification, and metadata change of a file:
$last_access = fileatime('larry.php');
$last_modification = filemtime('moe.php');
$last_change = filectime('curly.php');
The touch( ) function changes a file's modification time:
touch('shemp.php');          // set modification time to now
touch('joe.php',$timestamp); // set modification time to $timestamp

19.2.3 Discussion

The fileatime( ) function returns the last time a file was opened for reading or writing. The filemtime( ) function returns the last time a file's contents were changed. The filectime( ) function returns the last time a file's contents or metadata (such as owner or permissions) were changed. Each function returns the time as an epoch timestamp.
A file's modification time can be updated with touch( ). Without a second argument, touch( ) sets the modification time to the current date and time. To set a file's modification time to a specific value, pass that value as an epoch timestamp to touch( ) as a second argument.
This code prints the time a page on your web site was last updated:
print "Last Modified: ".strftime('%c',filemtime($_SERVER['SCRIPT_FILENAME']));