php获得文件大小和文件创建时间的方法

这篇文章主要介绍了php获得文件大小和文件创建时间的方法,涉及php中filesize及fileatime函数的使用技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了php获得文件大小和文件创建时间的方法。分享给大家供大家参考。具体分析如下:

php中可以显示文件的各种属性,这些属性包括文件的最后访问时间、最后修改时间、文件大小等。

  1. <HTML>
  2. <HEAD>
  3. <TITLE>Returning information about a file</TITLE>
  4. </HEAD>
  5. <BODY>
  6. <?php
  7. print "The size of the file is ";
  8. print filesize( "samplefile.doc" );
  9. print "<br>";
  10. $atime = fileatime( "samplefile.doc" );
  11. print "This file accessed on ";
  12. print date("l, M d, Y g:i a", $atime);
  13. print "<br>";
  14. $mtime = filemtime( "samplefile.doc" );
  15. print "This file was modified on ";
  16. print date("l, M d, Y g:i a", $mtime);
  17. print "<br>";
  18. $ctime = filectime( "samplefile.doc" );
  19. print "This file was changed on ";
  20. print date("l, M d, Y g:i a", $ctime);
  21. ?>
  22. </BODY>
  23. </HTML>

filemtime ( string filename )

返回文件上次被修改的时间,出错时返回 FALSE。时间以 Unix 时间戳的方式返回,可用于 date()。

filectime ( string filename )

返回文件上次 inode 被修改的时间,如果出错则返回 FALSE。时间以 Unix 时间戳的方式返回。

fileatime ( string filename )

返回文件上次被访问的时间,如果出错则返回 FALSE。时间以 Unix 时间戳的方式返回。

filectime:linux最后一次修改时间

filemtime:最后一次修改时间

fileatime:最后一次访问的时间

filemtime

(PHP 3, PHP 4 )

filemtime -- 取得文件修改时间

说明

int filemtime ( string filename)

返回文件上次被修改的时间,出错时返回 FALSE。时间以 Unix 时间戳的方式返回,可用于 date()。

注: 本函数的结果会被缓存。详细信息参见 clearstatcache()。

注: 本函数不能作用于远程文件,被检查的文件必须通过服务器的文件系统访问。

本函数返回文件中的数据块上次被写入的时间,也就是说,文件的内容上次被修改的时间。

例子 1. filemtime() 例子

  1. <?php
  2. // outputs e.g. somefile.txt was last modified: December 29 2002 22:16:23.
  3. $filename = 'somefile.txt';
  4. if (file_exists($filename)) {
  5. echo "$filename was last modified: " . date ("F d Y H:i:s.", filemtime($filename));
  6. }
  7. ?>

filectime

(PHP 3, PHP 4 )

filectime -- 取得文件的 inode 修改时间

说明

int filectime ( string filename)

返回文件上次 inode 被修改的时间,如果出错则返回 FALSE。时间以 Unix 时间戳的方式返回。

注意:在大多数 Unix 文件系统中,当一个文件的 inode 数据被改变时则该文件被认为是修改了。也就是说,当文件的权限,所有者,所有组或其它 inode 中的元数据被更新时。参见 filemtime()(这才是你想用于在 web 页面中建立“最后更新时间”脚注的函数)和 fileatime()。

注意某些 Unix 说明文本中把 ctime 说成是该文件建立的时间,这是错的。在大多数 Unix 文件系统中没有 Unix 文件的建立时间。

注: 本函数的结果会被缓存。详细信息参见 clearstatcache()。

注: 本函数不能作用于远程文件,被检查的文件必须通过服务器的文件系统访问。

例子 1. fileatime() 例子

  1. <?php
  2. // 输出类似:somefile.txt was last changed: December 29 2002 22:16:23.
  3. $filename = 'somefile.txt';
  4. if (file_exists($filename)) {
  5. echo "$filename was last changed: " . date ("F d Y H:i:s.", filectime($filename));
  6. }
  7. ?>

fileatime

(PHP 3, PHP 4 )

fileatime -- 取得文件的上次访问时间

说明

int fileatime ( string filename)

返回文件上次被访问的时间,如果出错则返回 FALSE。时间以 Unix 时间戳的方式返回。

注意:一个文件的 atime 应该在不论何时读取了此文件中的数据块时被更改。当一个应用程序定期访问大量文件或目录时很影响性能。有些 Unix 文件系统可以在加载时关闭 atime 的更新以提高这类程序的性能。USENET 新闻组假脱机是一个常见的例子。在这种文件系统下本函数没有用处。

注: 本函数的结果会被缓存。详细信息参见 clearstatcache()。

注: 本函数不能作用于远程文件,被检查的文件必须通过服务器的文件系统访问。

例子 1. fileatime() 例子:

  1. <?php
  2. // 输出类似:somefile.txt was last accessed: December 29 2002 22:16:23.
  3. $filename = 'somefile.txt';
  4. if (file_exists($filename)) {
  5. echo "$filename was last accessed: " . date ("F d Y H:i:s.", fileatime($filename));
  6. }
  7. ?>

希望本文所述对大家的php程序设计有所帮助。