在PHP中将字符串时间戳转换为时间戳


Convert String Timestamp to timestamp in PHP

我有一个类似"142783559999"的字符串,我想将其转换为时间戳,以便在date()函数中使用它。

到目前为止,我已经尝试过这些:

$time = date("Y-m-d", $timestamp);

它返回一个错误($timestamp预计是一个给定的长字符串);

$time = date("Y-m-d", strtotime($timestamp));

返回1970年1月1日

因此,我需要将字符串转换为long,以便在date函数中使用它。

感谢

编辑:

(int)$timestamp也不起作用$timestamp+0不起作用。

它看起来是javascript的.getTime()函数的产物,返回自1970/01/01以来的毫秒数,因此是13位数字,而时间戳是秒数,因此有10位数字。除以1000即可:

$time = date("Y-m-d", $timestamp/1000);
echo $time; // output: 2015-03-31