Php 获取字符串中日期之前的剩余天数

Php 获取字符串中日期之前的剩余天数,php,date,Php,Date,我有一个字符串$newAfter,它的输出类似于2016年3月9日星期三晚上11:59:59 我使用此代码计算剩余天数: $daysleft = floor(($newAfter - time()) / 86400); 这是我得到的结果: -16559 我想要字符串中日期之前的剩余天数。当然不能从格式字符串中减去天数,需要将它们作为use对象的整数减去: $newAfter的日期时间格式无效,strotime($newAfter)返回1.1.1970。使用正确的日期时间格式,例如,2016-

我有一个字符串
$newAfter
,它的输出类似于2016年3月9日星期三晚上11:59:59

我使用此代码计算剩余天数:

$daysleft = floor(($newAfter - time()) / 86400);
这是我得到的结果:

-16559

我想要字符串中日期之前的剩余天数。

当然不能从格式字符串中减去天数,需要将它们作为use对象的整数减去:


$newAfter
的日期时间格式无效,
strotime($newAfter)
返回1.1.1970。使用正确的日期时间格式,例如,
2016-03-09 11:59:59
我希望能够显示上面所述的完整日期和剩余天数。。不可能?Hi@Ghost-$notAfter是一个数组的引用,它的原始值看起来是这样的
Thu,2016年4月28日03:22:56+0200
I然后将其转换为gmdate
newAfter
该格式可以直接在代码中使用吗?@user3436467哦,好的,您可以查看我所做的修订,这就是原始输入格式OK cool,我尝试将其作为原始输入,它可以正确地与您的代码配合使用。谢谢你Ghost@user3436467真高兴见到你helped@Rizier123哇,那是什么?以前从未使用过,发现新款式=)谢谢Rizier
$notAfter = 'Thu, 28 Apr 2016 03:22:56 +0200';
$today = new DateTime;
$date = DateTime::createFromFormat('D, d M Y H:i:s O', $notAfter);
$diff = $date->diff($today);
echo "{$diff->days} days left.";