gpt4 book ai didi

php - 这一周是否已经过了这一天和时间 - PHP

转载 作者:可可西里 更新时间:2023-11-01 00:41:18 25 4
gpt4 key购买 nike

我在一个数组中存储了一天和一周中的时间的 3 个变量:

$shift['day'];
$shift['hour'];
$shift['meridian'];

所有 3 个一起,分别输出如下内容:

Friday 10 PM

DATE 根本没有被使用,只有 DAY 和 TIME,而且它显然没有被存储为时间戳。

如何检查这一天和时间是否已经过了这周?

例如:

$today = date("l"); // Get current day "Monday"
$hour = date("g"); // Get current hour "3"
$meridian = date("A"); // Get current meridian "PM"

会为我提供准备好与我的变量进行比较的当前值,但我不知道逻辑将如何确定我的时间是否已经过了本周?

非常感谢任何帮助。

最佳答案

逻辑:

  • 现在创建 DateTime 对象
  • 星期五晚上 10 点 创建 DateTime 对象。
  • 通过时间戳比较它们,看看哪个更大

代码:

$tz = new \DateTimeZone("UTC");
$now = new \DateTime("now", $tz);
$then = \DateTime::createFromFormat('l g A', 'Friday 10 PM', $tz);

if($then->getTimestamp() < $now->getTimestamp())
{
echo 'Friday 10 PM has passed this week';
}
else
{
echo 'No, Friday 10 PM has not passed this week';
}

回显 $then->format('d.m.Y, H:i:s') 产生 25.03.2016, 22:00:00。将日期从“星期五”更改为“星期六”正确生成 3 月 26 日,这是我用来验证是否为给定字符串正确创建了 DateTime 对象(Frid​​ay 10 PM).

关于php - 这一周是否已经过了这一天和时间 - PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36221648/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com