我试图让一个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-15-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返回的日期是在过去的......因为我使用,而(),它会永远在临近返回的日期,即使它明确地这样说。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top