制作的strtotime()只能在未来产生时间
-
21-09-2019 - |
题
我试图让一个PHP脚本找到一个日期(比如5-1)的下一个occurence。但是,如果我把那到strtotime()
在5-2它从今年的日期出现。我只是想让它总是返回一个日期可能。我怎样才能使这项工作?我用笨是否有帮助。
编辑:下面是一些代码,我想出了,如果有些卑微的灵魂在同样的问题上运行:
if (strtotime($date) < strtotime("now")) {
$realseconds = strtotime($date) + 31556926; //add one year in seconds
} else {
$realseconds = strtotime($date);
}
解决方案
您可以检查返回的日期是否比当前时间早,并且,如果是,一年添加到它。
您也可以通过一些日期在明年为strtotime
第二个参数。
其他提示
什么是5-1
或5-2
?!
尝试代替这样做:
strtotime('next October');
假设5-2意味着二月第五,可以执行
strtotime("february 5 +1 year")
代码:
$x=strtotime($inputString);
$YEAR=60*60*24*30*12;
while($x<$time()) $x+=$YEAR;
基本上,它增加了1年不通过的strtotime返回的日期是在过去的......因为我使用,而(),它会永远在临近返回的日期,即使它明确地这样说。
不隶属于 StackOverflow