PHP有三个基于系统文件的时间戳函数,它们隶属于文件系统函数库,其表示方法及作用如下:
fileatime():取得文件最后的存取时间
filectime():取得文件最后的改变时间
filemtime():取得文件最后的修改时间
这些函数会对真实存在的文件进行检测,返回值放在快取缓冲区中,返回false表示发生错误,否则返回一个整数形式的系统文件的时间戳记。譬如使用filemtime取得某个文件的最后一次修改时间,我们可以这样表示:
$fmodtime=filemtime($sf);
print $fmodtime;
运行以上句子,浏览器将显示如下样式的内容:1141396492 。
如果需要转换成常规的时间格式,只需用date函数格式化其时间戳:fmodtime=date("Y m d h:i:s",$fmodtime),这样将得到易于阅读的时间格式:2006 03 03 10:34:52 。
假如网站决定当天发布的文章当天应该显示“New”字样以达到特殊的目的,那么,利用系统文件时间戳函数则是一个很好的主意。上面我们已经学会了如何取得特定文件的最后修改时间,那么,剩下的工作就是将这个时间与当日的服务器系统时间进行比较,从而决定是否在文章列表相应条目中标志为“New”。应该注意的是,我们只需要比较年月日,不用关心时分秒,所以,正如以下例子那样,我们把两个时间都按年月日进行格式化后再作比较:
$fmodtime=date("Y m d",filemtime($sf));
$today=date("Y m d");
if($fmodtime==$todya){
print "New";
}