PHP 文件系统 filectime() 函数



PHP 文件系统filectime() 函数用于返回指定文件的最后修改时间。此函数可以检查文件的每日修改和 inode 的修改。

如果函数执行成功,则可以返回文件的最后修改时间,表示为 Unix 时间戳。如果失败,则返回 false。

此函数的结果可以被缓存,并使用 clearstatcache() 清除缓存。我们可以使用 filemtime() 函数返回文件内容上次修改的时间。

语法

以下是 PHP 文件系统filectime() 函数的语法:

int filectime ( string $filename )

参数

使用filectime() 函数所需的的参数如下:

序号 参数及描述
1

filename(必需)

文件的路径。

返回值

该函数返回时间,表示为 Unix 时间戳。如果函数失败,则返回 FALSE。

PHP 版本

filectime() 函数最初作为 PHP 4 核心的一部分引入,并且与 PHP 5、PHP 7、PHP 8 兼容良好。

示例

在下面的 PHP 代码中,我们将使用 PHP 文件系统filectime() 函数来显示指定文件的最后修改时间。因此,请查看以下代码进行演示:

<?php
   echo filectime("/PhpProject/sample.txt");
   echo "\n";
   echo "Last change: ".date("F d Y H:i:s.",filectime("/PhpProject/sample.txt"));
?>

输出

这将生成以下结果:

1590217956
Last change: May 23 2020 09:12:36.

示例

在此示例中,我们将获取 config.php 配置文件的创建时间。了解配置文件内容上次上传或修改的时间可能很有用。

<?php
   // Path to the configuration file
   $configFile = 'config.php';

   // get the last modification time of the config file
   $creationTime = filectime($configFile);

   // Handle error
   if ($creationTime !== false) {
      echo "The configuration file was created or changed on: " . date("F d Y H:i:s.", $creationTime);
   } else {
      echo "Could not retrieve the creation time of the configuration file.";
   }
?> 

输出

这将产生以下结果:

The configuration file was created or changed on: May 31 2024 11:21:16.

示例

在此示例中,记录了用户个人资料图片的最后修改时间。图片上次更改的时间对于审计或维护目的可能很有用。

<?php
   // profile image file location
   $profilePic = '/Applications/XAMPP/xamppfiles/htdocs/mac/pp.jpg';

   // get the last change time for a profile picture
   $picChangeTime = filectime($profilePic);

   //Handle error here
   if ($picChangeTime !== false) {
      echo "The profile picture was last changed on: " . date("F d Y H:i:s.", $picChangeTime);
   } else {
      echo "Could not retrieve the change time of the profile picture.";
   }
?> 

输出

这将产生以下结果:

The profile picture was last changed on: May 24 2024 13:07:37.

示例

在此示例中,我们将监视名为 error_log.txt 的日志文件的元数据中的任何更改。这对于跟踪日志文件上次更改的时间可能很有用。

<?php
   //Log file directory path
   $logFile = 'error_log.txt';

   //get the last time change of log file
   $logChangeTime = filectime($logFile);

   //handle error here
   if ($logChangeTime !== false) {
      echo "The log file's metadata was last changed on: " . date("F d Y H:i:s.", $logChangeTime);
   } else {
      echo "Could not retrieve the metadata change time of the log file.";
   }
?> 

输出

这将导致以下结果:

The log file's metadata was last changed on: May 20 2024 10:09:41.

注意

该函数返回文件的元数据的最新修改日期,而不是其内容。此类示例包括所有权、权限或其他元数据属性的修改。

总结

使用 PHP 的filectime() 方法查找文件元数据的最新修改日期。如果失败,则返回 false;如果成功,则生成一个 Unix 时间戳。

php_function_reference.htm
广告