目前,我正在向用PHP编写的系统中添加对国际化的支持。所有的日期现在存储为UTC,并根据个人用户本地化首选项显示。
但是,当用户输入日期时间(例如指定某个时间窗口)时,他们输入的日期时间被解释为UTC日期时间,而不是他们的本地日期时间。为了完成国际化,系统需要假设用户输入的日期时间是指他们的本地时间。
如何将日期字符串(即'YYYY-MM-DD HH:MM')转换为unix时间戳以进行正确的本地化?
发布于 2012-01-18 11:50:30
假设您知道用户的时区,他大概在某个位置的首选项中选择了这个时区:
$timezone = new DateTimeZone($usersTimezone);
$datetime = new DateTime('2012-01-18 20:00:00', $timezone);
echo $datetime->getTimestamp();这需要一个带有DateTime的PHP的最新版本。
https://stackoverflow.com/questions/8909578
复制相似问题