我有两个格式如下的字符串:
$status = "15:00";
$time = "15:00";
我想简单地用php比较它们:
if($status == $time)
{
echo 'true';
}
else
{
echo 'false';
}
我以前的值都是假的,即使它们是相同的(作为字符串)。 我想知道是否有办法将它们的类型改为“时间”并比较它们?
答案 0 :(得分:2)
您应该比较时间戳或DateTime objects而不是字符串:
$status = new DateTime( '15:00' );
$time = new DateTime( '15:00' );
echo $status == $time ? 'yes' : 'no';
<强>更新强>;基于评论:
/* you can also check, which timestamps was earlier or later */
echo $status > $time ? '$status is later then $time' : '$time is later then $status';
答案 1 :(得分:1)
使用strtotime()
进行时间比较。查看手册here
$status = "15:01";
$time = "15:00";
if(strtotime($status) == strtotime($time))
{
echo 'true';
}
else
{
echo 'false';
}
答案 2 :(得分:1)
使用 strtotime(),这会将字符串日期转换为整数,然后很容易比较。