Восход Закат Сумерки: различия между версиями

Материал из MajorDoMo инфо
Строка 2: Строка 2:
==Описание==
==Описание==
Расчет времени восхода, заката и сумерек
Расчет времени восхода, заката и сумерек
Расчет восхода, заката и сумерек средствами php.


==Код==
==Код==
Строка 8: Строка 10:
$sunset=date("H:i", $sun_info[sunset]); //Выдергиваем из результата функции время захода
$sunset=date("H:i", $sun_info[sunset]); //Выдергиваем из результата функции время захода
$sumerki_utro=date("H:i", $sun_info[civil_twilight_begin]); //Выдергиваем из результата функции время начала сумерек
$sumerki_utro=date("H:i", $sun_info[civil_twilight_begin]); //Выдергиваем из результата функции время начала сумерек
$sumerki_vecher=date("H:i", $sun_info[civil_twilight_end]); //Выдергиваем из результата функции время конца сумерек</ pre>
$sumerki_vecher=date("H:i", $sun_info[civil_twilight_end]); //Выдергиваем из результата функции время конца сумерек
setGlobal  ('ThisComputer.SunSetTime',$sunset); //Кидаем восход в свойство
setGlobal  ('ThisComputer.SunRiseTime',$sunrise); //Кидаем закат в свойство
setGlobal  ('ThisComputer.sumerki_utro',$sumerki_utro); //Кидаем утренние сумерки в свойство
setGlobal  ('ThisComputer.sumerki_vecher',$sumerki_vecher); //Кидаем вечерние сумерки в свойство</ pre>
 
Функция date_sun_info возвращает массив при успешном завершении или FALSE в случае возникновения ошибки.
 
Структура массива:
 
sunrise Время восхода солнца (зенитный угол = 90°35').
sunset Время заката солнца (зенитный угол = 90°35').
transit Время, когда солнце находится в своем зените, то есть достигло самой верхней точки.
civil_twilight_begin Начало гражданского рассвета (зенитный угол = 96°). Оно заканчивается на sunrise.
civil_twilight_end Конец гражданского заката (зенитный угол = 96°). Оно начинается на sunset.
nautical_twilight_begin Начало навигационного рассвета (зенитный угол = 102°). Оно заканчивается civil_twilight_begin.
nautical_twilight_end Конец навигационного заката (зенитный угол = 102°). Оно начинается на civil_twilight_end.
astronomical_twilight_begin Начало астрономического рассвета (зенитный угол = 108°). Оно заканчивается на nautical_twilight_begin.
astronomical_twilight_end Конец астрономического заката (зенитный угол = 108°). Оно начинается на nautical_twilight_end.

Версия от 15:26, 15 января 2020

Описание

Расчет времени восхода, заката и сумерек

Расчет восхода, заката и сумерек средствами php.

Код

$sun_info = date_sun_info(strtotime("now"), 57.0483, 41.0984); //date_sun_info стандартная функция php расчета времени восхода и заката 57.0483, 41.0984 координаты вашего местоположения
$sunrise=date("H:i", $sun_info[sunrise]); //Выдергиваем из результата функции время восхода
$sunset=date("H:i", $sun_info[sunset]); //Выдергиваем из результата функции время захода
$sumerki_utro=date("H:i", $sun_info[civil_twilight_begin]); //Выдергиваем из результата функции время начала сумерек
$sumerki_vecher=date("H:i", $sun_info[civil_twilight_end]); //Выдергиваем из результата функции время конца сумерек
setGlobal  ('ThisComputer.SunSetTime',$sunset); //Кидаем восход в свойство
setGlobal  ('ThisComputer.SunRiseTime',$sunrise); //Кидаем закат в свойство
setGlobal  ('ThisComputer.sumerki_utro',$sumerki_utro); //Кидаем утренние сумерки в свойство
setGlobal  ('ThisComputer.sumerki_vecher',$sumerki_vecher); //Кидаем вечерние сумерки в свойство</ pre>

Функция date_sun_info возвращает массив при успешном завершении или FALSE в случае возникновения ошибки.

Структура массива:

sunrise Время восхода солнца (зенитный угол = 90°35').
sunset Время заката солнца (зенитный угол = 90°35').
transit Время, когда солнце находится в своем зените, то есть достигло самой верхней точки.
civil_twilight_begin Начало гражданского рассвета (зенитный угол = 96°). Оно заканчивается на sunrise.
civil_twilight_end Конец гражданского заката (зенитный угол = 96°). Оно начинается на sunset.
nautical_twilight_begin Начало навигационного рассвета (зенитный угол = 102°). Оно заканчивается civil_twilight_begin.
nautical_twilight_end Конец навигационного заката (зенитный угол = 102°). Оно начинается на civil_twilight_end.
astronomical_twilight_begin Начало астрономического рассвета (зенитный угол = 108°). Оно заканчивается на nautical_twilight_begin.
astronomical_twilight_end Конец астрономического заката (зенитный угол = 108°). Оно начинается на nautical_twilight_end.