我只需要比较格式为 d.m.y 的字符串值所代表的日期(例如今天为15.07.11
)。
strtotime
不幸地给了我错误的结果(可能是因为格式)。我找到了问题的答案(PHP strtotime incorrect conversion)但我的PHP版本中没有DateTime::CreateFromFormat
。我找不到strfptime
,但认为答案的主题意味着strptime
。 strptime
的结果是一个数组。我很惊讶我可以比较数组,但比较结果无效。
将给定字符串格式的日期与PHP< = 5.1.6进行比较的最简单方法是什么?
答案 0 :(得分:1)
您始终可以将strptime
的结果传递给mktime
并获取可用的Unix时间戳,您可以将其与DateTime
个对象进行比较或提供。
<?php
$d = strptime('15.07.11', '%d.%m.%y');
$timestamp = mktime($d['tm_hour'], $d['tm_min'], $d['tm_sec'], $d['tm_mon'], $d['tm_mday'], 1900 + $d['tm_year']);
echo date("j F Y", $timestamp);
?>
唯一要注意的是,strptime将年份作为自1900年以来的年数,并且mk_time仅需要一年的数量,因此我添加了1900年。