32位php 時(shí)間戳超過(guò)2038(具體幾月份忘記了 )年后 轉(zhuǎn)換為時(shí)間時(shí)無(wú)法轉(zhuǎn)換的問(wèn)題
$t = 4102300800;
$obj = new \DateTime("@$t"); // 這里時(shí)間戳前要寫(xiě)一個(gè)@符號(hào)
$timezone = timezone_open('Asia/HONG_KONG'); // 設(shè)置時(shí)區(qū)
$obj->setTimezone($timezone);
echo $obj->format("Y-m-d H:i:s"); // 2099-12-30 16:00:00
new \DateTime 前面加\是使用tp3.2框架的原因 代表引用
可以封裝一個(gè)這個(gè)方法到類庫(kù)中即可
function timetostr($time , $date='Y-m-d H:i:s'){
$t = $time ; // 4102300800
$obj = new \DateTime("@$t"); // 這里時(shí)間戳前要寫(xiě)一個(gè)@符號(hào)
$timezone = timezone_open('Asia/HONG_KONG'); // 設(shè)置時(shí)區(qū)
$obj->setTimezone($timezone);
return $obj->format($date); // 2099-12-30 16:00:00
}
獲取時(shí)間戳
$datetime = \new DateTime('2096-10-05');
echo "時(shí)間戳:".$datetime->format("U")."\n";