publicfunctionsetTimezone($timezone, $force = FALSE) {
if (!$this->hasTime() || !$this->hasGranularity('timezone') || $force) {
// This has no time or timezone granularity, so timezone doesn't mean
// much. We set the timezone using the method, which will change the
// day/hour, but then we switch back.
$arr = $this->toArray(TRUE);
parent::setTimezone($timezone);
$this->setDate($arr['year'], $arr['month'], $arr['day']);
$this->setTime($arr['hour'], $arr['minute'], $arr['second']);
$this->addGranularity('timezone');
return$this;
}
returnparent::setTimezone($timezone);
}