【发布时间】:2018-01-19 23:43:51
【问题描述】:
<?php
$myFile = strtolower('date.txt');
$lines = file($myFile);
$expire_date = $lines[0];
$date = strtotime($expire_date);
//$date->format("y,m,d");
$now = new DateTime();
$now->format("y,m,d");
if($now < $date) {
echo 'Have not reached date yet.';
}else{
echo 'Date in file is old';
}
?>
我的 date.txt 文件的内容 -
2018,2,18(这是第1行)
测试(这是我文件中的第 2 行)
我想将文件中的 2018,2,18 第 1 行与当前日期进行比较。代码一直说日期是旧的,而它显然是在未来。是因为第 1 行虽然会返回日期,但实际上是数组还是不是日期?
【问题讨论】:
-
你检查过
$date的样子吗? -
我回显了 $date,它似乎是空白的。我认为 strtotime 应该将我的字符串转换为时间?除非我的 $expire_date 不被视为字符串?
-
或者它不是函数可以理解的字符串... ;)
$date实际上是一个布尔值false: php.net/manual/en/function.strtotime.php
标签: php date comparison