php日期函数计算不起作用

php日期函数计算不起作用,php,Php,您好,我正在学习php,我试图使用date函数来显示当前时间。 我有一个if语句来检查当前时间是否大于下一个小时。 这是密码 <? $current_time= date('G:i:s'); $next_time= date('G:i:s',strtotime('+1hour')); if($current_time > $next_time ) { echo $current_time." is greater than ".$next_time; } ?>

您好,我正在学习php,我试图使用date函数来显示当前时间。 我有一个if语句来检查当前时间是否大于下一个小时。 这是密码

<?
$current_time= date('G:i:s');
$next_time= date('G:i:s',strtotime('+1hour'));
if($current_time > $next_time )
{

    echo $current_time." is greater than ".$next_time;


}
?>

写这段代码的时候是9:23:39 下一个小时应该是10:23:39

令人惊讶的是,我得到了:

9:23:39大于10:23:39

我是不是遗漏了什么。
请帮助

记住,您是在比较字符串,而不是数字。9大于1,因此返回true


使用DateTime类执行此操作,或者比较unix时间戳(
time()
strottime(“+1hour”)

请记住,您是在比较字符串,而不是数字。9大于1,因此返回true


可以使用DateTime类来执行此操作,也可以比较unix时间戳(
time()
strotime(“+1hour”)

您可以使用整数来处理if语句

$var = date("U",timestamp)

获取自Unix纪元(1970年1月1日00:00:00 GMT)以来的秒数,从而为您提供一个数字,您可以确定哪个更大。

您可以使用整数处理if语句

$var = date("U",timestamp)

获取自Unix纪元(1970年1月1日00:00:00 GMT)以来的秒数,从而为您提供一个数字,您可以确定哪个更大。

您比较字符串,而不是时间您比较字符串,而不是时间您的意思是这样的$next_time=time(strotime(“+1hour”);strotime本身返回一个时间戳。只需将time()存储在一个变量中,将strotime(“+1小时”)存储在另一个变量中即可;strotime本身返回一个时间戳。只需将time()存储在一个变量中,将strtotime(“+1小时”)存储在另一个变量中即可$下一个时间=日期(“U”,标准时间(“+1小时”);我通常在其他变量中配置我的时间戳,但你有一个好主意。我做了这样的事情,它成功了:$current_time=date(“U”)$下一个时间=日期(“U”,标准时间(“+1小时”);我通常在其他变量中配置时间戳,但您有一个好主意。