簡體   English   中英

在用戶時區顯示MySQL日期時間

[英]Display MySQL datetime in users timezone

使用now()創建的MySQL日期時間存儲為UTC。

使用JavaScript檢測到客戶端時區,並以"Europe/London"返回。

從MySQL選擇日期時間並在用戶本地時間顯示創建的時間的最佳方法是什么?

PHP和Node都與MySQL一起使用。

您可以使用MySQL CONVERT_TZ函數

SELECT CONVERT_TZ(NOW(), 'UTC', 'Europe/London')

我不知道您的邏輯是如何產生的,但是我在PHP中使用它:

function utc_to_timezone($format, $date, $to_timezone)
{
    $date = new DateTime($date);
    $date->setTimezone(new DateTimeZone($to_timezone));

    return $date->format($format);
}

例:

echo utc_to_timezone('Y-m-d H:i:s', '2014-07-04 15:34:23', 'Europe/London');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM