在if条件下遇到的格式不正确的数值

问题描述 投票:1回答:1

这个if条件抛出“遇到一个非常好的数值”的消息。

if(strtotime($from) + $conHour*60*60 == strtotime($to)){

}

我看到的错误是:

遇到一个非常好的数值

**** **的var_dump

$from = string(19) "2019-04-15 16:05:00"    
$to =string(19)"2019-04-15 17:05:00"    
$conhour = string(5) "01:00"
php datetime time
1个回答
0
投票

当您尝试对数值和非数字类型(字符串,bool,对象等)执行数学运算时,将引发此通知。

在您的代码中可能发生这种情况的原因可能是$from$to不是有效的日期字符串:请参阅https://www.php.net/manual/en/datetime.formats.date.phphttps://www.php.net/manual/en/datetime.formats.time.php以获得正确的格式。

另一个可能的原因是你的$conHour没有有效的数值。

编辑:根据你的更新,它是后者:$ conhour = string(5)“01:00”你试图乘以一个字符串。首先(取决于你如何获得该变量)将其转换为数值(1)然后你将能够乘以它

© www.soinside.com 2019 - 2024. All rights reserved.