php filemtime 24小时格式

web*_*x l 4 php format date

我创建此代码是为了获取文件上次触摸的日期,然后以 AM/PM 格式将其显示给用户。

但它似乎不起作用。我知道我已经很接近了;我究竟做错了什么?

$filename = 'test.html';
if (file_exists($filename)) {
    $date = date(filemtime($filename));
    clearstatcache();
}
echo "- last updated: " . date('F d Y h:i A', strtotime($date));
Run Code Online (Sandbox Code Playgroud)

输出:最后更新:1969 年 12 月 31 日 06:59 PM

Tim*_*ain 7

尝试这个:

if (file_exists($filename)) {
    $date = filemtime($filename);
    clearstatcache();
}
echo "- last updated: " . date('F d Y h:i A', $date);
Run Code Online (Sandbox Code Playgroud)

在您的代码中,这一行:

$date = date(filemtime($filename));
Run Code Online (Sandbox Code Playgroud)

不会工作,因为filemtime返回一个 UNIX 时间戳,然后您将其作为第一个参数传递给date(). 即使这确实有效,您也需要使用 将该日期转换回 UNIX 时间戳strtotime(),然后再次转换回日期字符串,这似乎有点低效。

还要考虑如果该文件不存在并且$date已在代码中的其他位置设置,会发生什么情况?