PHP:用string替换date

时间:2011-08-15 12:51:24

标签: php string date replace compare

我有一个包含多个日期(从 - 到)的字符串,以“|”分隔,例如:

10.10.-29.10.2011 | 1.11.-31.11.2011

我需要一个代码来比较最新的开始(“from”)日期(在本例中为1.11.2011),如果此日期早于当前日期,则将整个字符串替换为“CLOSED”。
有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

这样的东西?

$dates = "10.10.-29.10.2010 | 13.8.-31.11.2011 | 14.8.-31.12.2011";
$datesArr = explode(" | ",$dates);
foreach($datesArr as $k=>$date) {
    $split = explode(".-",$date);
    $from = explode(".",$split[0]); $to = explode(".",$split[1]);
    $from = $from[0].".".$from[1].".".$to[2];
    if(strtotime($from)<time()) unset($datesArr[$k]);
}
if(!empty($datesArr)) {
    if(count($datesArr)==1) $dates = $datesArr[0];
    else {
        $dates = implode(" | ",$datesArr);
    }
}
else $dates = "CLOSED";
echo $dates;