草庐IT

Timezone

全部标签

php - 这是一个 php 错误,还是我的时区/PHP 设置有问题?

文件的真实完整内容:getMessage();}DateTime构造函数接受一个字符串,如果无法解析它应该抛出异常。这在我的本地机器上运行良好,但在我的一台远程服务器上没有捕获到异常(而且,我使用try/catch和相同的完全代码):Fatalerror:Uncaughtexception'Exception'withmessage'DateTime::__construct()[function.DateTime---construct]:Failedtoparsetimestring(lol)atposition0(l):Thetimezonecouldnotbefoundinth

php - 服务器或客户端在发送/接收日期时应该处理时区吗?

我了解最佳做法是将UTC日期/时间存储在我们的数据库中,并以本地时区显示给用户。我们将存储时区而不是偏移量,因此我们可以支持夏令时。什么方式最适合处理时区?选项1:服务器仅使用UTC,客户端转换为时区以HTML格式发送到浏览器的所有日期均为UTC。客户端将使用moment.js或类似工具将UTC时间转换为正确的时区。将使用我们数据库中指定的时区而不是浏览器本地时间,因为这可能不正确。当用户提交日期或时间时,必须先将其转换为UTC时间,然后再提交给服务器。选项2:服务器转换为时区所有计算仍然以UTC进行,并且日期/时间会在最后一刻转换为正确的时区,例如在以HTML格式输出日期时。当客户提

php - 在 yii2 中设置动态时区

有谁知道如何为每个用户设置动态时区?如果时区存储在数据库中,我如何从数据库中获取它并在运行时设置它,这样我就不需要每次都在我的代码中设置它? 最佳答案 这是一个示例,假设时区作为字符串存储在users表的timezone列中。将此添加到您的应用程序配置中:'onbeforeRequest'=>function(){$user=Yii::$app->user->identity;if($user&&$user->timezone){Yii::$app->setTimeZone($user->timezone);}},此代码将在请求之前

php - php.ini 中设置的默认欧洲时区,但 date_default_timezone_get() 返回 'UTC'

我在php.ini文件中设置了默认时区:date.timezone=Europe/Rome我还在编辑后重新启动了httpd服务(servicehttpdrestart),但是当我调用date_default_timezone_get()时,它返回“UTC”值。为什么会这样?同时调用php_info()显示php.ini中设置的时区附言。对不起我的英语。 最佳答案 如果您的代码(包括任何框架)确实没有根本改变时区,并且您在从5.1.x到5.3.x的PHP版本下运行,则有可能TZ环境变量设置在系统中的某处。那么您的date.timezo

PHP:比较两个具有不同时区的 DateTime 对象

PHP如何比较DateTime使用条件运算符时的对象(、>、>=、)?这个比较时区不变吗?我试过下面的代码,看起来它是时区不变的,有人可以确认吗?代码:$datestr="2015-10-0910:28:01";$dt=newDateTime($datestr);$nowdate=newDateTime("now",newDateTimeZone("CET"));print_r($dt);echo"";print_r($nowdate);echo"";var_dump($nowdate输出:DateTimeObject([date]=>2015-10-0910:28:01[timezo

php - 如何从机场代码 (IATA/FAA) 获取时区

我正在尝试制作一个PHP函数,该函数返回给定机场代码(IATA/FAA)的UTC时区。函数应该做的是这样的:echogetTimezoneFromAirportCode("CPH");//+1echogetTimezoneFromAirportCode("CXI");//+14要实现此功能,我需要所有机场代码及其时区的列表。通过稍微搜索,我找到了这个列表:https://sourceforge.net/p/openflights/code/HEAD/tree/openflights/data/airports.dat?format=raw(来源:http://openflights.o

PHP将UTC时间转换为本地时间

我正在从我的服务器获取如下格式的UTC时间,我的要求是将UTC时间转换为本地时间。因此,用户可以根据他们的时区在浏览器上看到用户友好的时间。请帮我解决这个问题。谢谢$utc="2014-05-29T04:54:30.934Z"我尝试了一些方法,但对我的情况不起作用第一$time=strtotime($utc);$dateInLocal=date("Y-m-dH:i:s",$time);echo$dateInLocal;第二$time=strtotime($utc.'UTC');$dateInLocal=date("Y-m-dH:i:s",$time);echo$dateInLocal;

php - 存储在客户端的 cookie 的时区是什么?

我需要使用PHPsetcookie函数设置cookie在1小时后过期。我服务器上的时区设置为GMT。我应该如何设置cookie到期日期,以使其跨不同客户端的浏览器时区工作? 最佳答案 据我所知,客户时间是什么应该无关紧要。PHP根据unix时间码设置过期时间。该时间的任何变化都应由服务器决定。这是PHPmanual的摘录对于setcookie():expire:Thetimethecookieexpires.ThisisaUnixtimestampsoisinnumberofsecondssincetheepoch.Inotherw

php - 日期时间区错误 : Unknown or bad timezone

我正在尝试运行这个脚本:format('H:i');echo$time;?>但是我得到了这个错误:Fatalerror:Uncaughtexception'Exception'withmessage'DateTimeZone::__construct()[function.DateTimeZone---construct]:Unknownorbadtimezone(Asia/Kolkata)虽然它适用于Asia/Dacca例如。可能是什么问题以及如何解决? 最佳答案 欢迎来到StackOverflow!如果您还没有抽出时间阅读常见问

php - date_default_timezone_set ('UTC' ) 不工作

这似乎很奇怪,但我已经检查了所有内容,但仍然发生了一件奇怪的事情。我无法更改我的php脚本的时区。首先要做的是:我所做的是这样的:';echodate('Y-m-dH:i:s');?>当我在测试中尝试这个时,这似乎工作正常http://codepad.org/rpYZ0flA.我的服务器时区设置为UTC+8:00台北,但当我尝试上面的代码时,它并没有真正起作用。它仍然在我的服务器时区中显示我当前的date_time,而不是遵循上面的代码。这是我服务器的php.ini配置:date/timesupportenabled"Olson"TimezoneDatabaseVersion2012.