php怎麼實現時區轉換

2020-07-16 10:06:21

php時區轉換的實現方法:首先自定義一個「dateTimeChangeByZone」方法;然後獲取指定區域的時間,並確定要轉換為指定時區的時間;接著設定好時間格式;最後通過自定義的方法實現時間轉換即可。

不同時區的時間互相轉換

<?php
/**
 * @param string $dateTime 時間,如:2020-04-22 10:10:10
 * @param string $fromZone 時間屬於哪個時區
 * @param string $toZone   時間轉換為哪個時區的時間
 * @param string $format   時間格式,如:Y-m-d H:i:s
 * 時區選擇參考:https://www.php.net/manual/zh/timezones.php 常見的如:UTC,Asia/Shanghai
 * 時間格式參考:https://www.php.net/manual/zh/datetime.formats.php
 *
 * @return string
 */
function dateTimeChangeByZone($dateTime, $fromZone, $toZone, $format = 'Y-m-d H:i:s')
{
    $dateTimeZoneFrom = new DateTimeZone($fromZone);
    $dateTimeZoneTo   = new DateTimeZone($toZone);
    $dateTimeObj      = DateTime::createFromFormat($format, $dateTime, $dateTimeZoneFrom);
    $dateTimeObj->setTimezone($dateTimeZoneTo);
 
    return $dateTimeObj->format($format);
}
 
echo dateTimeChangeByZone('2020-04-22 10:10:10', 'UTC', 'Asia/Shanghai', 'Y-m-d H:i:s');

結果:

2020-04-22 18:10:10

更多相關知識,請存取PHP中文網

以上就是php怎麼實現時區轉換的詳細內容,更多請關注TW511.COM其它相關文章!