PHP:日期“昨天”,“今天”

2022-08-30 23:50:24

我有一个小函数显示最新的活动,它从数据库中获取unix格式的时间戳,然后用这行回显出来:

 date("G:i:s j M -Y", $last_access)

现在我想将日期(j M -Y)替换为昨天,如果最新活动在今天之内,则替换为今天,昨天也是如此。

我该怎么做?


答案 1

我会找到上一个午夜的时间戳和它前面的时间点,如果是在两个时间戳之间,那么显示昨天,任何大于上午夜时间戳的东西都是今天......$last_access

我相信这将比做日期算术更快。

实际上,我刚刚测试了这段代码,它似乎工作得很好:

<?php
    if ($last_access >= strtotime("today"))
        echo "Today";
    else if ($last_access >= strtotime("yesterday"))
        echo "Yesterday";
?>

答案 2
function get_day_name($timestamp) {

    $date = date('d/m/Y', $timestamp);

    if($date == date('d/m/Y')) {
      $date = 'Today';
    } 
    else if($date == date('d/m/Y',now() - (24 * 60 * 60))) {
      $date = 'Yesterday';
    }
    return $date;
}
print date('G:i:s', $last_access).' '.get_day_name($last_access);

推荐