Carbon now time wrong

故事扮演 提交于 2020-01-03 07:18:06

问题


I just started using the Carbon extension (seems pretty sweet so far), but am confused on the Carbon::now() function. According to the docs, it seems as though this function should reflect the current time in the users current timezone, however, I seem to get a time that is an hour ahead of GMT.

i.e. Carbon::now() says 2015-01-01 17:26:46 when I am on PST and it is actually currently 2015-01-01 08:26:46.

Do I have to detect and put in a users local timezone for all instances?

What gives? (I very well may have a fundamental misunderstanding of how a website gets a users local time)


回答1:


This appears to be because the timezone of your server is different to your own.

This could be caused by:

  • Server misconfiguration
  • Physical location of the server is in a different timezone
  • Policies of your provider could also cause this. If your provider decides they want to operate on the same timezone on every server they have throughout the world, this will cause issues.

The server's timezone appears to be CET (Central European Time) which is +1 GMT, as you described.

To fix this, you should change the timezone in your php.ini file (instructions are from the link):

  1. Open your php.ini file
  2. Add the following line of code to top of your php.ini file:

date.timezone = "US/Central"

Alternatively you should replace the US/Central timezone with the desired timezone as outlined here if you wish PHP to use another timezone.




回答2:


Carbon is UTC based therefore simply doing Carbon::now() will output the time in UTC format

You have to specify the timezone for an accurate reflection of the dateTime in your city or area.

There are two ways to do this. You can either do:

Carbon::now('PST') OR Carbon::now('Continent/City') like (Carbon::now('America/Montreal') for example




回答3:


Change your time zone in config/app.php

 'timezone' => 'YOUR TIME ZONE',


来源:https://stackoverflow.com/questions/27732548/carbon-now-time-wrong

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!