从GMT时间获取当地时间的偏移小时数-Laravel Carbon
我正在开发一个laravel应用程序,它将GMT时间存储在世界各地的数据库中 现在我想让用户在他的本地时区中看到时间,但为此,我必须知道用户的本地时区,而我不知道 我有用户的国家ISO代码,使用从GMT时间获取当地时间的偏移小时数-Laravel Carbon,laravel,timezone,php-carbon,Laravel,Timezone,Php Carbon,我正在开发一个laravel应用程序,它将GMT时间存储在世界各地的数据库中 现在我想让用户在他的本地时区中看到时间,但为此,我必须知道用户的本地时区,而我不知道 我有用户的国家ISO代码,使用DateTimeZone::listIdentifiers方法可以获得时区,但它会返回一些国家的时区数组 那么,有没有一种方法或途径可以获得GMT+00:00和用户本地GMT时间之间的小时偏移量?您需要发出一些请求,将时区从客户端/浏览器传递到服务器,以获得准确的时区 许多国家都有多个时区,俄罗斯、美国等
DateTimeZone::listIdentifiers
方法可以获得时区,但它会返回一些国家的时区数组
那么,有没有一种方法或途径可以获得GMT+00:00和用户本地GMT时间之间的小时偏移量?您需要发出一些请求,将时区从客户端/浏览器传递到服务器,以获得准确的时区 许多国家都有多个时区,俄罗斯、美国等等。所以国家代码是不够的 然后,不要使用偏移,使用命名时区,因为由于夏令时,许多时区也有多个偏移。欧洲/巴黎可以是GMT+1或GMT+2,因此现在GMT+0之间的当前偏移量!=给定时间戳的当前偏移量 如果您有时区的准确城市名称,那么在格式化碳日期之前使用它非常简单:
Carbon::createFromTimestamp($utcTimestamp)->tz('America/New_York')