Я использую такой попроще:
$sun_info = date_sun_info(time(), 46.984, 28.8358);
foreach ($sun_info as $key => $val) {
if ($key == 'sunrise') {
$sunrise = $val;
echo 'Восход: '.date("H:i:s", $sunrise).'<br>';
setGlobal('Chisinau.SunRise',date("H:i:s", $sunrise));
}
if ($key == 'sunset') {
$sunset = $val;
$day_length = $sunset - $sunrise;
echo 'Заход: '.date("H:i", $sunset).'<br>';
echo 'Долгота дня: '.gmdate("H:i", $day_length).'<br>';
setGlobal('Chisinau.SunSet',date("H:i:s", $sunset));
setGlobal('Chisinau.LongTag',gmdate("H:i:s", $day_length));
}
if ($key == 'transit') {
echo 'В зените: '.date("H:i:s", $val).'<br>';
setGlobal('Chisinau.Transit',date("H:i:s", $val));
}
if ($key == 'civil_twilight_begin') {
echo 'Начало утренних сумерек: '.date("H:i:s", $val).'<br>';
setGlobal('Chisinau.civil_begin',date("H:i:s", $val));
}
if ($key == 'civil_twilight_end') {
echo 'Конец вечерних сумерек: '.date("H:i:s", $val).'<br>';
setGlobal('Chisinau.civil_end',date("H:i:s", $val));
}
}
и запускаю раз в сутки в 0.00