如果时间未过,请使用PHP

如果时间未过,请使用PHP,php,if-statement,time,Php,If Statement,Time,我有一个XML文件,其中包含日期和时间,格式如下:YYYYMMDDHH 它是4位数的年、2位数的月、2位数的日和2位数的小时 如何基于此变量生成if/else语句 我已经尝试过这个代码,但它对我不起作用 if( strtotime($validtime) < strtotime('now') ) { echo "display forecast"; } else{ echo "hide forecast"; } if(strotime($validtime)

我有一个XML文件,其中包含日期和时间,格式如下:YYYYMMDDHH 它是4位数的年、2位数的月、2位数的日和2位数的小时

如何基于此变量生成if/else语句

我已经尝试过这个代码,但它对我不起作用

if( strtotime($validtime) < strtotime('now') ) {
echo "display forecast";
}
else{
echo "hide forecast";
}
if(strotime($validtime)
其中$validtime偏离了时间字符串

谢谢

strotime()
本机无法识别
YYYYMMDDHH
格式,因此您应该手动添加分钟和秒,如下所示:

if( strtotime($validtime.'0000') < strtotime('now') ) {
    echo "display forecast";
}
else{
    echo "hide forecast";
}

strotimer()无法识别YYYYMMDDHH格式,因此需要重新格式化$validtime变量。像这样的方法应该会奏效:

if(strtotime(substr($validtime,4,2)."/".substr($validtime,6,2)."/".substr($validtime,0,4)." ".substr($validtime,8,2).":00") < strtotime('now') ) {
    echo "display forecast";
}
else{
    echo "hide forecast";
}
if(strottime(substr($validtime,4,2)。“/”.substr($validtime,6,2)。“/”.substr($validtime,0,4)。“.substr($validtime,8,2)。:00“
你能发布
$validtime
的值吗?@Askanison4这是一个
yyyymmddh
所以现在在纽约应该是
2014042812
我在这里试过了:效果很好。可能我遗漏了一些内容。它可能需要格式化为mm/dd/yyyy之类的格式
if(strtotime(substr($validtime,4,2)."/".substr($validtime,6,2)."/".substr($validtime,0,4)." ".substr($validtime,8,2).":00") < strtotime('now') ) {
    echo "display forecast";
}
else{
    echo "hide forecast";
}