如何使用 Zend_Date 简单地更改时区偏移量?
我正在使用 Zend_Date 来管理日程安排应用程序中的日期/时间。
我能够确定用户时区的唯一方法是通过 Javascript,它只提供时区偏移量。 Zend_Date 似乎只采用“America/New_York”格式的时区。
有没有办法以这种格式获取用户时区或使用 Zend_Date 设置时区偏移量?
谢谢!
I'm using Zend_Date to manage dates/times in a scheduling app.
The only way I'm able to determine the user's Timezone is via Javascript which only gives a Timezone Offset. Zend_Date only seems to take Timezones in the 'America/New_York' format.
Is there a way to get the users timezone in this format or set the Timezone Offset with Zend_Date?
Thanks!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
Nicky,
您实际上并不需要 Zend_Date 来实现此目的,因为 PHP 内部 DateTime 和 DateTimeZone 对象可以很好地实现此目的;但是,如果您确实需要使用 Zend_Date,我可以为您指出正确的方向。
请参阅以下示例
(Z = 时区差异 [+0100])
这应该可以让您到达您需要去的地方。如果您遇到困难,请发布代码示例。
Nicky,
You don't really need Zend_Date for this as the PHP intrinsic DateTime and DateTimeZone objects work well for this; however, I can point you in the right direction if you really need to use Zend_Date.
See the following examples
(Z = Difference of time zone [+0100])
This should get you to where you need to be. Please post code samples if you get stuck.
您可以使用 timezone_name_from_abbr 函数:
您还需要考虑 DST。请查看此示例了解更多信息。
You could use the timezone_name_from_abbr function:
You will also need to consider DST. Have a look at this example for more info.
您可以使用 javascript 将 cookie 设置为用户时区偏移量。
然后在 php 中你可以有一个按偏移量索引的数组
You can use javascript to set a cookie to the users timezone offset.
Then in php you can have an array indexed by offset