迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 > PHP >

在 PHP 中获取昨天的日期

作者:迹忆客 最近更新:2023/03/14 浏览次数:

本文将介绍如何在 PHP 中获取昨天的日期。

在学习解决方案之前,我们先来了解一下 date()的概念。

PHP 中的 date()

它是一个内置的 PHP 函数,用于返回格式化的日期字符串。

date() 的语法

date(format, timestamp)

参数

format:这是一个强制参数,用于指定输出日期字符串格式。其中一些选项是:

timestamp:它是一个可选参数,以整数格式指定 Unix 时间戳。如果未提供,则将采用默认值作为当前本地时间。

PHP 中的 DateInterval

它是一个表示日期间隔的 PHP 类。它还提供了静态方法,它接受输入字符串并从输入字符串设置一个 DateInterval。

现在我们已经理解了 date()strtotime()mktime() 的基本概念。我们将使用所有这些函数来获取昨天的日期。

在 PHP 中使用 strtotime() 获取昨天的日期

strtotime() 是一个内置的 PHP 函数,可以将英文文本 DateTime 解析为 1970 年 1 月 1 日格林威治标准时间 00:00:00 的 Unix 时间戳。

strtotime() 的语法

strtotime(time, now);

参数

time:这是一个强制参数,它指定一个日期/时间字符串。
now:这是一个可选参数,指定用作计算相对日期基础的时间戳。

我们可以将 yesterday-1 days 传递给 strtotime 函数以获取昨天的时间戳。如上所述,时间戳可以通过 date() 函数转换为字符串格式的日期。

示例代码:

<?php
    // Get yesterdays date
    echo date('d.m.Y',strtotime("-1 days")). "\n";
    echo date('d M Y',strtotime("yesterday")); 
?>

输出:

24.10.2021
24 Oct 2021

在 PHP 中使用 mktime() 获取昨天的日期

它是一个内置的 PHP 函数,用于返回日期的 Unix 时间戳。除了传递的参数表示日期(不是 GMT 日期)之外,此函数几乎与 gmmktime() 相同。

语法

mktime(hour, minute, second, month, day, year)

参数

  • hour:这是一个可选参数,用于指定小时。
  • minute:可选参数,指定分钟。
  • second:可选参数,指定秒。
  • month:可选参数,指定月份。
  • day:可选参数,指定日期。
  • year:可选参数,指定年份。

示例代码:

<?php
    $m = date("m"); // Month value
    $de = date("d"); // Today's date
    $y = date("Y"); // Year value

    echo "Yesterday's date was: " . date('d-m-Y', mktime(0,0,0,$m,($de-1),$y)); 
?>

输出:

Yesterday's date was: 24-10-2021

yearmonth 的值在今天和昨天之间是相同的。昨天的值比今天的值少 1。

在 PHP 中使用 time() 获取昨天的日期

time() 函数返回当前时间戳。如果我们减去它的值,那么我们得到昨天同一时间的时间戳。

示例代码:

<?php
    echo date('d M Y', time() - 60 * 60 * 24);
?>

输出:

24 Oct 2021

在 PHP 中使用 DateInterval 获取昨天的日期

它是一个表示日期间隔的 PHP 类。它还提供了静态方法,它接受输入字符串并从输入字符串设置一个 DateInterval。

DateInterval() 的语法

new DateInterval($period);

参数

$period:它是一个强制参数,以字符串的形式指定时间。例如,P1D 指定 1 天。PT1H 指定 1 小时。

DateInterval::createFromDateString() 的语法

public static DateInterval::createFromDateString(string $datetime);

参数

$datetime:它是一个强制参数,以字符串格式指定日期/时间。

我们可以将 yesterday 传递给 createFromDateString(),将 P1D 传递给 DateInterval 函数以获取昨天的时间戳。我们可以在当前时间戳中加上或减去这个时间戳,结果时间戳可以通过 date() 函数转换为字符串格式的日期。

示例代码:

<?php
    $date = new DateTime();
    $date->add(DateInterval::createFromDateString('yesterday'));
    echo $date->format('d M Y') . "\n";

    $date = new DateTime();
    $date->sub(new DateInterval('P1D'));
    echo $date->format('d M Y') . "\n";
?>

输出:

24 Oct 2021
24 Oct 2021

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 PHP 中获取时间差的分钟数

发布时间:2023/03/29 浏览次数:183 分类:PHP

本文介绍了如何在 PHP 中获取时间差的分钟数,包括 date_diff()函数和数学公式。它包括 date_diff()函数和数学公式。

PHP 中的重定向

发布时间:2023/03/29 浏览次数:136 分类:PHP

本教程演示了如何将用户从页面重定向到 PHP 中的其他页面

PHP 分页

发布时间:2023/03/29 浏览次数:66 分类:PHP

本教程介绍如何在 PHP 中对数据库行进行分页

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便