加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – 为日期和时间取两个变量并组合制作一个日期

发布时间:2020-12-13 17:15:53 所属栏目:PHP教程 来源:网络整理
导读:我想取两个变量,一个代表日期,另一个代表时间,然后将它们组合起来制作一个日期. 然后,我想使用该组合日期和时间来检查当前日期和时间是否与合并日期和时间相差24小时或更短. $game_date = $game['date'];$game_time = $game['time'];$combined_date_and_time
我想取两个变量,一个代表日期,另一个代表时间,然后将它们组合起来制作一个日期.

然后,我想使用该组合日期和时间来检查当前日期和时间是否与合并日期和时间相差24小时或更短.

$game_date = $game['date'];
$game_time = $game['time'];

$combined_date_and_time = date('$game_date $game_time');

$game_date读取存储如下:03/28/2013

$game_time读取存储如下:07:05 pm

在输出时,$combined_date_and_time读作:

$2pm03America/Los_Angeles_28pm31America/Los_Angeles $2pm03America/Los_Angeles_313803America/Los_Angeles

这当然是不对的.

是否可以将两者合并为一个日期然后进行比较?

解决方法

$game_date = game['date'];
$game_time = game['time'];

$combined_date_and_time = $game_date . ' ' . $game_time;
$past_date = strtotime($combined_date_and_time);

$hours = 24;

// Check if date is more recent than the specified number of hours
if ((time() - $past_date) < (60 * 60 * $hours))
{
    echo 'Yes!';
}

不过要小心!如果您的日期以欧洲格式(dd / mm / yyyy)存储,则需要在解析日期之前更改订单,否则无法使用.

如果日期分隔符是 – 或.,则假定为欧洲格式.

if (strpos($game_date,'-') !== false)
{
    list($day,$month,$year) = explode('-',$game_date);
    $game_date = $month . '/' . $day . '/' . $year;
}
else if (strpos($game_date,'.') !== false)
{
    list($day,$year) = explode('.',$game_date);
    $game_date = $month . '/' . $day . '/' . $year;
}

上面的代码将介于日期变量的初始化和combined_date_and_time变量之间.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读