我有一个XML文件,其中包含日期和时间格式:YYYYMMDDHH 它是4位数年份,2位数月份,2位数字日期和2位数小时。
如何根据此变量制作if / else语句。
我已尝试过这段代码,但对我来说无效。
if( strtotime($validtime) < strtotime('now') ) {
echo "display forecast";
}
else{
echo "hide forecast";
}
其中$ validtime偏离了时间段。
谢谢!
答案 0 :(得分:0)
strtotime()
本身并不识别YYYYMMDDHH
格式,因此您应该像这样手动追加分钟和秒:
if( strtotime($validtime.'0000') < strtotime('now') ) {
echo "display forecast";
}
else{
echo "hide forecast";
}
请注意,上面的代码几乎总是会输入if()
语句,因为strtotime('now')
会产生秒数,所以这样的事情可能会合适:
if( strtotime($validtime.'0000') < strtotime(date('Y-m-d H:00:00')) ) {
答案 1 :(得分:0)
使用strtotime()无法识别YYYYMMDD格式,因此您需要重新格式化$ 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";
}