我使用以下内容:
$endtime = new DateTime(date('r', '1329717600'));
$endtime->setTimezone(new DateTimeZone('America/Los_Angeles'));
echo $endtime->format('w - l');
应输出“1 - 星期一”;但它输出“0 - 星期天”......
我该如何解决这个问题?
答案 0 :(得分:3)
这在技术上是正确的 - 该时间戳的时间/日期将是洛杉矶的星期日晚上10点,星期一早上6点在UTC。
答案 1 :(得分:3)
尝试以下方法:
$endtime = new DateTime(date('r', '1329717600'), new DateTimeZone('America/Los_Angeles'));
echo $endtime->format('w - l');
setTimezone
函数
不修改DateTime对象表示的时间戳值 使用此方法设置时区时。只有时区,和 因此产生的显示格式受到影响。
答案 2 :(得分:0)
$endtime = new DateTime;
$endtime->createFromFormat('U', 1329717600, new DateTimeZone('America/Los_Angeles'));
echo $endtime->format('w - l');