Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何检查日期是否已过期_Php_Date_Datetime_Time_Mktime - Fatal编程技术网

Php 如何检查日期是否已过期

Php 如何检查日期是否已过期,php,date,datetime,time,mktime,Php,Date,Datetime,Time,Mktime,我正在检查帖子是否过期,这是我到现在为止一直在尝试的 $p = "08"; //suppose month is Aug $m="2016"; //year is 2016 $input_time = mktime(0,0,0,$p+1,0,$m); if ($input_time < time()){ print '<p class = "error">Post has expired</p>'; } else{ echo 'Post is still

我正在检查帖子是否过期,这是我到现在为止一直在尝试的

$p = "08"; //suppose month is Aug
$m="2016"; //year is 2016
$input_time = mktime(0,0,0,$p+1,0,$m); 

if ($input_time < time()){
   print '<p class = "error">Post has expired</p>';

}
else{
echo 'Post is still fresh';
}
$p=“08”//假设月份是八月
$m=“2016”//今年是2016年
$input_time=mktime(0,0,0,$p+1,0,$m);
如果($input_timePost已过期”

; } 否则{ echo“帖子仍然新鲜”; }

在上面的示例中,我只能检查月和年,如何也可以检查日、月和年?

使用
strotime(“输入时间”)并将其用于检查使用
strotime(“输入时间”)并用它检查

如果我有你的问题,解决方法很简单。只需通过day,而不是第五个参数中的零:

$d='12';
$input_time = mktime(0,0,0,$p+1,$d,$m); 

如果我有你的问题,解决方法很简单。只需通过day,而不是第五个参数中的零:

$d='12';
$input_time = mktime(0,0,0,$p+1,$d,$m); 
您可以使用DateTime

$date = new DateTime('2016-09', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //true

$date = new DateTime('2016-09', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //false

$date = new DateTime('2016-08-06', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //false

$date = new DateTime('2016-08-04', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //true
$date=新日期时间('2016-09',新日期时区('欧洲/伦敦');
var\u dump($date->getTimestamp()getTimestamp()getTimestamp()getTimestamp()您可以使用DateTime

$date = new DateTime('2016-09', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //true

$date = new DateTime('2016-09', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //false

$date = new DateTime('2016-08-06', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //false

$date = new DateTime('2016-08-04', new DateTimeZone('Europe/London'));
var_dump($date->getTimestamp()<time()); //true
$date=新日期时间('2016-09',新日期时区('欧洲/伦敦');
变量转储($date->getTimestamp()getTimestamp()getTimestamp()getTimestamp()使用

使用


如果不是输入中给出的月份和年份,您的意思是过期吗?您能解释一下,相对于当前日期,您所说的过期是什么意思吗?如果给定的过期日期是2016年8月4日,今天的日期是2016年8月5日,那么这意味着post已过期。您需要确定post日期是否是今天的日期,如果它小于当前日期,是不是?@提问前请先搜索。基本上现在已经询问并回答了每个日期比较问题。如果不是输入中给出的月份和年份,您的意思是过期吗?您能解释一下当前日期的过期是什么意思吗?如果给定的过期日期是2016年8月4日,今天的日期是2016年8月5日,则表示ns post已过期您需要查找post日期是否为今天的日期,是否小于过期日期,对吗?@Aniket Singhprece在提问前搜索。现在基本上每个日期比较问题都已被询问和回答。它显示post再次刷新&againIt显示的post再次刷新&再次刷新