为了账号安全,请及时绑定邮箱和手机立即绑定

日期时间值和系统日期时间的比较失败

日期时间值和系统日期时间的比较失败

PHP
汪汪一只猫 2021-12-03 15:40:39
我使用日期时间选择器为每个帖子保存了到期日期,现在我需要在每次访问页面时根据当前日期和时间检查它并根据其是否过期显示消息......但比较失败我试过date(),date create from format然后DateTime::createFromFormat……但它没有通过检查if (is_a($expirydate, 'DateTime'))。$todaydate=new DateTime();$todaydate->format('d/m/Y H:i:s');$expirydate=strtotime(get_field('expirydate',$post->ID));$expirydate=date('d/m/Y H:i:s', $expirydate);if (is_a($todaydate, 'DateTime')) {        echo "today date is datetime";        if (is_a($expirydate, 'DateTime')) {                echo "expiry date check passed";}}if ($expirydate >= $todaydate)     {    echo "not expired";    }   它回应味精今天的日期是日期时间,但仅此而已...不显示味精“过期日期检查通过”或“未过期”...它显示所有 3 条消息。
查看完整描述

1 回答

?
胡子哥哥

TA贡献1825条经验 获得超6个赞

与 strtotime 合作是老派。最好使用日期时间。也可以直接比较 DateTime 对象。


$expirydate=date_create(get_field('expirydate',$post->ID));

//$expirydate=date_create('today 11:19');  //for a test


$todaydate=new DateTime('Now'); //with current Time

//$todaydate=new DateTime('Today'); //with Time 00:00


if($todaydate > $expirydate) {

  echo 'expired';

}


查看完整回答
反对 回复 2021-12-03
  • 1 回答
  • 0 关注
  • 177 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信