Я неожиданно получаю сообщение об ошибке Fatal error: Call to a member function setTimezone() on a non-object
после добавления некоторых новых строк кода:
Прежде всего, я использовал DateTime для переключения между различными форматами времени для расчета летнего времени и т. Д.
Я использовал следующий код [Кодовый блок 1]
foreach ($result as $k=>$v)
{$timestamp=DateTime::createFromFormat('Y-m-d\TH:i:s.u\Z', $k,new DateTimeZone("UTC")); //take current date from $k as new DateTile Object
$timestamp->setTimezone(new DateTimeZone('Europe/Berlin')); //convert timezone
$date[]=$timestamp->format('Y-m-d H:i:s'); // "export" the date to date-array
}
Этот код работает хорошо, до сих пор:
Я добавил 20 строк кода над другой функцией DateTime [Блок кода 2]:
$ts=new DateTime("@".round($_GET['startdate']/1000));
$startdate=$ts->format('Y-m-d\TH:i:s.u\Z');
После того, как я добавил эти 2 строки, все время я получаю сообщение об ошибке: Fatal error: Call to a member function setTimezone()
для этой строки: $timestamp->setTimezone(new DateTimeZone('Europe/Berlin'));
... но я не вижу связи между этими частями кода?!
Что здесь произошло?
Спасибо за любую идею.
// Обновление: как вы можете видеть в комментариях, я использую PHP 5.3.6
еще раз: блок кода 1 работает, если я удалю блок кода 2