【发布时间】:2018-04-21 18:13:53
【问题描述】:
我有以下代码:
<?php
$date = new DateTime;
var_dump($date);
$date->timezone = 'Europe/Madrid';
var_dump($date->timezone); // Shows 'Europe/Madrid'
var_dump($date); // Shows 'UTC' (!)
var_dump($date->timezone); // Shows 'UTC' (!!)
显示以下输出:
object(DateTime)#1 (3) {
["date"]=>
string(26) "2017-11-08 21:21:15.596968"
["timezone_type"]=>
int(3)
["timezone"]=>
string(3) "UTC"
}
string(13) "Europe/Madrid"
object(DateTime)#1 (3) {
["date"]=>
string(26) "2017-11-08 21:21:15.596968"
["timezone_type"]=>
int(3)
["timezone"]=>
string(3) "UTC"
}
string(3) "UTC"
当我做一个简单的var_dump($date) 时,为什么$date->timezone 会从“欧洲/马德里”变回“UTC”???
使用print_r() 代替var_dump() 具有相同的结果。
【问题讨论】: