当前位置: 首页 > 知识库问答 >
问题:

php时区:DateTime::CreateFromFormat忽略时区

辛盛
2023-03-14

我正在Debian8上使用PHP5.6.17。在建立owncloud之后,我注意到owncloud(而不是apache)自写的日志有错误的时区。

我调查了一下,好像,那一行:

DateTime::createFromFormat("U.u", number_format(microtime(true), 4, ".", ""), 'Europe/Berlin');

这不关心任何时区设置。而不是欧洲/柏林(+1/+2)的时间,我总是得到UTC的时间。

/etc/php5/apache2/php.ini中,我设置了“date.timezone=”europe/berlin“并且系统时间(debian)也是正确的。

即使运行如下所示,也会得到相同的输出(UTC):

 $time=DateTime::createFromFormat('U.u', sprintf('%.6F', microtime(true)), new DateTimeZone('UTC'));
 echo $time->format('c') . "\n";
 $time=DateTime::createFromFormat('U.u', sprintf('%.6F', microtime(true)), new DateTimeZone('Europe/Berlin'));
 echo $time->format('c') . "\n";

对这个问题有什么想法吗?

共有1个答案

芮岳
2023-03-14

引用关于DateTime::CreateFromFormat()的PHP手册:

注意:当time参数包含UNIX时间戳(例如946684800)或指定时区(例如2010-01-28T15:0000+02:00)时,将忽略timezone参数和当前时区。

如果要更改时区,则必须在创建对象之后使用setTimezone()方法。

 类似资料:
  • 问题内容: 有没有更好的方法来忽略Angularjs中的时区: “ 2014-01-18 14:30:00”而不是“ 2014-01-18 15:30:00” http://jsfiddle.net/samibel/2rMXJ/ 问题答案: 这是一个例子: 只需管道另一个过滤器: 在您的模板中:

  • 问题内容: 我使用以下代码来序列化从外部服务获得的响应,并作为我的服务的一部分返回json响应。但是,当外部服务返回带有时区(10:30:00.000-05.00)的时间值时,杰克逊会将其转换为15:30:00。如何忽略时区值? 问题答案: 您可以创建自定义解串器 告诉杰克逊使用您的自定义解串器 并像这样使用它: 您可以使用Jackson自定义序列化为服务响应添加时区信息

  • 问题内容: 我正在尝试将Twitter datetime转换为本地iso-string(对于prettyDate)已有2天了。我只是不正确的当地时间。 即时通讯使用以下功能: 在newdate中一切正常,但是toISOString()再次将其返回到原始时间…有人可以帮助我从Twitterdate中获取iso中的本地时间,格式为:Thu,31May 2012 08:33:41 +0000 问题答案:

  • 在从php创建UTC日期时间时,我当前收到以下严格警告。 严格警告:依赖系统的时区设置是不安全的。请使用日期。时区设置、TZ环境变量或date\u default\u timezone\u set()函数。如果您使用了这些方法中的任何一种,但仍收到此警告,则很可能是您拼错了时区标识符。我们选择“UTC”作为“UTC/0.0/no DST” 这是我正在使用的代码行。 奇怪的是,我已经使用UTC作为时

  • 我正在尝试将Twitter日期时间转换为本地ISO字符串(用于prettyDate),现在为2天。我只是没弄准当地时间.. im使用以下功能: 在newdate中,一切正常,但toISOString()将它再次返回到原始时间。有谁能帮我从Twitterdate格式为:Thu,31 May 2012 08:33:41+0000的iso中获取当地时间吗

  • 由于某些原因,我无法将CURL与HTTPS一起使用。在我升级curl库之前,一切都很正常。现在,我在尝试执行CURL请求时遇到了这种响应:SSL CA证书(路径?访问权限?)有问题 以下是关于相关问题的建议,我试图做到以下几点: > 启用并指向从http://curl.haxx.se/docs/caextract.html下载的cacert.pem 我也试着用positiveSSL做同样的事情。c