相关疑难解决方法(0)

比较两个日期

如何比较PHP中的两个日期?

在数据库中,日期看起来像2011-10-2.

如果我想将今天的日期与数据库中的日期进行比较,看看哪一个更大,我该怎么做?

我试过这个,

$today = date("Y-m-d");
$expire = $row->expireDate //from db

if($today < $expireDate) { //do something; }
Run Code Online (Sandbox Code Playgroud)

但它并没有真正起作用.这样做的另一种方式是什么?

更新:我知道这篇文章有点旧,但我只是想提一下碳,这是一个与laravel一起使用的类,但可以与经典的PHP一起使用,它确实有日期的奇迹.看看吧:

php compare date

119
推荐指数
5
解决办法
25万
查看次数

如何检查当前日期/时间是否超过设定的日期/时间?

我正在尝试编写一个脚本来检查当前日期/时间是否超过了 05/15/2010 at 4PM

如何使用PHP的date()函数执行此检查?

php datetime date

109
推荐指数
4
解决办法
20万
查看次数

PHP:如何比较时间字符串和日期('H:i')?

我有时间保存在数据库中,如下午7:30作为varchar字段.我想检查这个时间是否大于现在的时间.

我将DB时间字符串转换为'19:30',现在我想做这样的事情:

$my_time = '19:30';

if($my_time  > date('H:i'))
{
    do something ...
}
Run Code Online (Sandbox Code Playgroud)

问题是如果$ my_time是非空字符串,则上面将返回true.

strtotime($my_time)也没有帮助.

strtotime('H:i',$my_time) 00:00.

这样做(int)date('H:i')会给1700年的实际时间是17:09,因此删除冒号,然后比较不会太工作....

在此上下文中,更改数据库时间数据是不可能的.

请帮助.如果我说错了一些事实,请纠正我.

php comparison datetime

8
推荐指数
2
解决办法
2万
查看次数

PHP:检查日期时间是否未过期

我有一个 DateTime 对象,其中包含过去的时间戳。

我现在想检查这个日期时间是否早于 48 小时。

我怎样才能最好地比较它们?

问候

编辑:嗨,

谢谢您的帮助。这是辅助方法。有什么命名建议吗?

    protected function checkTemporalValidity(UserInterface $user, $hours)
{
    $confirmationRequestedAt = $user->getConfirmationTokenRequestedAt();
    $confirmationExpiredAt = new \DateTime('-48hours');

    $timeDifference = $confirmationRequestedAt->diff($confirmationExpiredAt);

    if ($timeDifference->hours >  $hours) {
        return false;
    }

    return true;
}
Run Code Online (Sandbox Code Playgroud)

php datetime compare

4
推荐指数
1
解决办法
8020
查看次数

为什么我只能在使用之前转储()它时才能到达我的日期对象?

为什么我dump()在使用它之前只能到达我的日期对象?

这是我的功能:

public function checkSubscriptionEndDate($user){

    $subscriptionEndDate = $user->getSubscriptionEndDate();

    dump($subscriptionEndDate);

    if($subscriptionEndDate==null){
        $subscriptionEndDateMessage = $this->get('translator')->trans('subscriptionEndDateMessage');
        $subscriptionStatus = "error";
    }else{

        $subscriptionEndDateDate = $subscriptionEndDate->date;
        // CHECK IF SUBSCRIPTION END DATE IS BEFORE NOW
        if (date('now') < $subscriptionEndDateDate) {
            dump('before');
            $subscriptionStatus = "success";
            $subscriptionEndDateMessage = $this->get('translator')->trans('subscriptionStatusSuccess').' '.date('d/m/Y',strtotime($subscriptionEndDateDate));
        }else{
            dump('after');
            $subscriptionStatus = "error";
            $subscriptionEndDateMessage = $this->get('translator')->trans('subscriptionStatusError').' '.date('d/m/Y',strtotime($subscriptionEndDateDate));
        }   
    }

    return array(
        'subscriptionEndDateMessage' => $subscriptionEndDateMessage,
        'subscriptionStatus' => $subscriptionStatus
    );

    return $subscriptionEndDateMessage;

}
Run Code Online (Sandbox Code Playgroud)

当我这样做时,页面按预期加载,没有问题.但如果我删除这一行:

dump($subscriptionEndDate);

我无法再加载$subscriptionEndDate->date此错误页面中所示:

在此输入图像描述

php datetime var-dump symfony

2
推荐指数
1
解决办法
49
查看次数

PHP中如何比较两个时间戳?

在我的代码中,我有这样的场景:

<?php
     $start = "03:00:00:am";
     $end   = "08:00:00:pm";

      if($start > $end) {}   
?>
Run Code Online (Sandbox Code Playgroud)

我尝试使用 unix 时间戳,但没有成功。

php

1
推荐指数
1
解决办法
1万
查看次数

开始日期和开始时间小于结束日期和结束时间验证

开始时间,结束日期和结束时间变量.

日期变量已格式化 yyyy-mm-dd

时间变量已格式化hh-mm(但仅在小时数可用时,例如,分钟始终为00)

我可以将这些变量插入到我的数据库中没有问题,但在此之前,我想检查开始日期和时间是否在结束日期和时间之前.我知道如何检查时间是否更早,日期更早,但我无法一起检查时间和日期,我将不胜感激任何帮助?

$_POST['start_time']
$_POST['end_time']
$_POST['start_date']
$_POST['end_date']
Run Code Online (Sandbox Code Playgroud)

是变量以及我如何抓住它们.

php mysql time date jquery-ui-datepicker

0
推荐指数
1
解决办法
6241
查看次数