标签: timezone

Yii2:设置时区

我在 Yii2 应用程序中设置了时区,如 config/web.php 中的文档所述:

'timeZone' => 'Europe/Berlin',
Run Code Online (Sandbox Code Playgroud)

但是:这仅对 Yii2 有效,显然不适用于 PHP 函数,例如date(). PHP 时区设置保持不变,因此 PHP 和 Yii2 之间存在差异。

如何使 Yii2 时区成为根据 Yii2 配置中的时区设置设置 PHP 时区的领先时区?

编辑

时区是在应用程序组件中设置的\Yii::$app,而不是在格式化程序组件中设置的。

我无法修改php.ini文件。

php timezone yii2

0
推荐指数
1
解决办法
1万
查看次数

Kotlin SimpleDateFormat 解析错误的时区

我的移动时区是 GMT+7,我有一个代码可以将特定日期时间(GMT+0)转换为特定时区(GMT+3):

var strDate = "2020-07-10 04:00:00+0000"
var result: Date?
var dateFormatter = SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSSZ")
dateFormatter.timeZone = TimeZone.getTimeZone("Asia/Jerusalem")
result = dateFormatter.parse(strDate)
Run Code Online (Sandbox Code Playgroud)

问题是结果总是返回“ Fri Jul 10 11:00:00 GMT+07:00 2020
,但我预计它将返回日期对象“ Fri Jul 10 07:00:00 GMT+03:00 2020 ”,知道是什么我的代码有问题吗?

timezone simpledateformat kotlin

0
推荐指数
1
解决办法
1万
查看次数

时区缩写

客户端希望查看 Windows 时区,即此处https://support.microsoft.com/en-us/help/973627/microsoft-time-zone-index-valuesTime列中的时区,但使用 UTC 而不是 GMT。

并且还想查看缩写。但我找不到任何官方的 Windows 时区缩写列表。我发现的是 IANA 缩写。

我们将把 Windows 时区转换为 IANA 时区以处理时间。

但问题是 IANA 缩写=Windows 时区缩写吗?如果没有,我在哪里可以找到 Windows 缩写规则列表?

timezone iana

0
推荐指数
1
解决办法
911
查看次数

将 PST 时间转换为 GMT

我正在尝试在java中将pst时间戳转换为gmt

我有一个带有时间戳的字符串2021-03-23T22:00:00.669-07:00。我将如何处理该字符串并将其转换为 GMT 时间戳?

2021-03-24T05:03:00.669Z
Run Code Online (Sandbox Code Playgroud)

我做了一些我尝试过的事情,但还没有去过任何地方

//Date date = new Date(str);
      
String s = str;
DateFormat pstFormat = new SimpleDateFormat();
DateFormat gmtFormat = new SimpleDateFormat();
TimeZone gmtTime = TimeZone.getTimeZone("GMT");
TimeZone pstTime = TimeZone.getTimeZone("PST");
      
pstFormat.setTimeZone(gmtTime);
gmtFormat.setTimeZone(pstTime);
System.out.println("GMT Time: " + pstFormat.format(s));
System.out.println("PST Time: " + gmtFormat.format(s));
Run Code Online (Sandbox Code Playgroud)

结果java.lang.IllegalArgumentException: Cannot format given Object as a Date在这一行:

System.out.println("GMT Time: " + pstFormat.format(s));
Run Code Online (Sandbox Code Playgroud)

java timezone

0
推荐指数
1
解决办法
514
查看次数

时区的全名和缩写有什么区别

我的数据库中有多次如下所示:

String summerTime = "2022-07-21T10:00:00Z";
String winterTime = "2022-11-21T10:00:00Z";
Run Code Online (Sandbox Code Playgroud)

另一方面,我想根据自定义时区获取这些日期的时间部分,我拥有的时区如下所示:

GMT-03:00
GMT-02:00
GMT-01:00
GMT+02:00
GMT+01:00
....
Run Code Online (Sandbox Code Playgroud)

当我尝试使用以下代码提取时间部分时:

ZoneId tz = ZoneId.of("GMT+01:00");

ZonedDateTime date1 = ZonedDateTime.parse(summerTime).withZoneSameInstant(tz.toZoneId());
ZonedDateTime date2 = ZonedDateTime.parse(winterTime).withZoneSameInstant(tz.toZoneId());
Run Code Online (Sandbox Code Playgroud)

我得到:

11:00
11:00
Run Code Online (Sandbox Code Playgroud)

但如果您仔细观察,即使在夏季或冬季约会,时间也是相同的。

我期望得到:

12:00  // <----- correct
11:00  // <----- correct
Run Code Online (Sandbox Code Playgroud)

我找到了解决问题的方法,即使用时区的全名而不是缩写:

ZoneId tz = ZoneId.of("Europe/Paris");
Run Code Online (Sandbox Code Playgroud)

这给了我正确的回应:

12:00
11:00
Run Code Online (Sandbox Code Playgroud)

但我不能使用它,因为我应该只使用缩写。

我的问题:

  • 为什么两种格式给出不同的结果?
  • 如何从缩写中获取全名,以便获得正确的输出?

java timezone java-time

0
推荐指数
1
解决办法
171
查看次数

用Java更改日期对象的时区?

土耳其有两个TimeZone GMT + 2和GMT + 3.我想将GMT + 2日期更改为GMT + 3,但我希望保护GMT + 2 TimeZone中的小时和分钟.

我想花几个小时和几分钟,然后将这些值设置为GMT + 3 TimeZone日期.结果必须没有小时和分钟的变化,但时区必须只是改变.在功能toconvert日期必须是GMT + 2格式,但返回值必须是GMT + 3格式.怎么做清楚?

public static Date convertTimezone(Date toConvert) {
    Date date = new Date();
    date.setYear(toConvert.getYear());
    date.setMonth(toConvert.getMonth());
    date.setHours(toConvert.getHours());
    date.setMinutes(toConvert.getMinutes());
    return date;
}
Run Code Online (Sandbox Code Playgroud)

java timezone date

-1
推荐指数
1
解决办法
8921
查看次数

我怎样才能转换UTC日期时间?

我通过XML文件提供了以下日期

2013-12-13T19:00:00+01:00
Run Code Online (Sandbox Code Playgroud)

我希望将它作为DateTime存储在我的数据库中,并使用ZERO UTC偏移量.

不幸的是,我的网络服务器有以下TimeZone信息,它会破坏我的转换逻辑......

-06:00:00
(UTC-06:00) Central Time (US & Canada)
Central Standard Time 
Run Code Online (Sandbox Code Playgroud)

我怎样才能完成这个?我完全迷失了!

.net timezone datetime timezone-offset

-1
推荐指数
1
解决办法
58
查看次数

Linux 服务器如何永久更改时区

  1. 我正在通过 tzselect 更改时区,但在注销时,此时区更改为默认时区。如何永久进行此更改?

  2. 服务器时区也应该反映在 mysql 时区上。这该怎么做 ?

java mysql linux timezone

-1
推荐指数
1
解决办法
2551
查看次数

如何使用 Moment.js 获取美国加利福尼亚州的当前本地时间?

我搜索通过这样做我可以获得任何国家的时区

var la = moment.tz("America/Los_Angeles").format('YYYY-MM-DD HH:mm:ssZ');
Run Code Online (Sandbox Code Playgroud)

但是当我这样做California时说没有可用的时区?

运行小提琴运行示例

SOLUTION :America/Tijuana  have same timezone as America/California
Run Code Online (Sandbox Code Playgroud)

javascript timezone momentjs

-1
推荐指数
1
解决办法
2161
查看次数

为什么在Java日历对象上设置时区没有效果?

请考虑以下代码段.

    TimeZone tz = TimeZone.getTimeZone("GMT");
    System.out.println(tz);

    Calendar cal = Calendar.getInstance();
    cal.set(2017, Calendar.DECEMBER, 25);

    System.out.println("before setting time zone: " + cal.getTime());
    cal.setTimeZone(tz);

    System.out.println("after setting time zone: " + cal.getTime());
Run Code Online (Sandbox Code Playgroud)

结果如下:

sun.util.calendar.ZoneInfo[id="GMT",offset=0,dstSavings=0,useDaylight=false,transitions=0,lastRule=null]
before setting time zone: Mon Dec 25 22:39:53 EST 2017 
after setting time zone: Mon Dec 25 22:39:53 EST 2017
Run Code Online (Sandbox Code Playgroud)

在时区更改后,为什么日期的打印输出仍显示EST?不应该是GMT吗?

java timezone datetime calendar date

-1
推荐指数
1
解决办法
628
查看次数