Php strotime并检查时间戳是否有效
我遇到了一个strotime问题Php strotime并检查时间戳是否有效,php,Php,我遇到了一个strotime问题 $data['task_time_due'] = strtotime("+1 day"); 这将返回false $this->Utility->is_timestamp_valid($data['task_time_due']) Utility.php function is_timestamp_valid($timestamp) { return ((string) (int) $timestamp === $timestamp)
$data['task_time_due'] = strtotime("+1 day");
这将返回false
$this->Utility->is_timestamp_valid($data['task_time_due'])
Utility.php
function is_timestamp_valid($timestamp)
{
return ((string) (int) $timestamp === $timestamp)
&& ($timestamp <= PHP_INT_MAX)
&& ($timestamp >= ~PHP_INT_MAX);
}
有人知道为什么吗?这个函数在我的整个应用程序中运行得非常好。因为strotime返回int,而您正在严格地将它与string进行比较。将此字符串int$timestamp===$timestamp更改为此intstring$timestamp===$timestamp为什么要通过字符串和int来强制转换函数的返回?因此,您在php.ini中设置了默认时区设置,或者设置了date\u default\u timezone\u?@D4V1D将时区设置为date.timezone