我的数据库中有一个名为time
的字段。它包含UNIX时间戳。然而,数据类型是一个字符串,在PHP中日期函数需要一个整数。Settype整数更改php中的值
所以我试图解析字符串为整数,但值的变化。
$time = $value['time'];
echo "Time string is $time<br/>";
settype($time,'integer');
echo "time intenger is".$time."<br/>";
这是输出我得到
时间字符串为1499327190163
时间intenger is2147483647
我到底做错了什么?或者有更好的方法将时间戳转换为日期吗?谢谢
编辑:我刚刚读了关于settype的手册,它说“int”的最大值是PHP_INT_MAX。也许这可能是我的问题,是否可以改变这个问题,或者在改变最大整数值时是否有任何安全相关问题?
据我所知,UNIX时间戳仅有10位。你有13位数,我认为你需要先将它分为1000 –
@DollyAswin时间戳是使用javascript生成的。 Dolly建议使用 –
,请注意,时间戳可能会以秒或毫秒为单位,具体取决于语言/设置。此外,你的功能支持浮动?他们可以有更大的“整数”值 – Kaddath