【问题标题】:Get local Timezone and convert DB timing into it获取本地时区并将数据库时间转换为它
【发布时间】:2019-01-24 15:40:09
【问题描述】:

我在前端显示时间,存储在 DB 中的时间采用 CST 形式 Example 23:35:00 。我正在使用下面的 PHP 代码显示它:

$formatedEventTime = "--";
 if($eventTime != ''){
 $formatedEventTime = date('h:i A', strtotime($eventTime));
}
//displays 11:35 PM

现在我需要为在纽约或旧金山观看它的人们获取当地时间,并在他们当地的 TimeZone 中显示他们的时间 我不确定我可以使用的最佳方法是什么:

var d = new Date();
var n = d.getTimezoneOffset();
var timezone = n / -60;
console.log(timezone); 

然后我需要将其转换为小时并根据响应执行加法/减法。有更好的方法吗?

<script> var localTimeZone = moment.tz.guess();
    //  console.log(localTimeZone);
  </script>
//as per comments I am using momentJS

我可以打印像 America/Chicago 这样的 Local timeZone 我如何在我的 PHP 中使用它并根据它显示时间?

【问题讨论】:

  • momentjs.com看看这个库,我觉得对你有很大帮助。
  • 好的,我现在使用了 momentJS,我将时区作为 JS 变量如何在 php 中转换,看看我更新的问题
  • 如果您想在 PHP 中使用时区,您应该使用 ajax 将其发送到您的 PHP 代码。但是既然可以用javascript来显示,为什么还要用PHP来显示呢?

标签: javascript php jquery datetime


【解决方案1】:

JS 以 UTC 格式保存日期,并将其显示为适合用户设备上的时区。所以一种方法是用来自纪元(new Date($eventTime)).toLocaleString()(伪代码)的毫秒事件时间来实例化它。

对于任何加法/减法等,我推荐moment.js

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-09
    • 2013-02-28
    • 2018-01-17
    相关资源
    最近更新 更多