date_sunrise
(PHP 5, PHP 7)
date_sunrise — Возвращает время рассвета для заданных дня и местоположения
Описание
$timestamp
, int $returnFormat
= SUNFUNCS_RET_STRING
, float|null $latitude
= null
, float|null $longitude
= null
, float|null $zenith
= null
, float|null $utcOffset
= 0
) : string|int|float|false
date_sunrise() возвращает время рассвета для
определенных дня (заданного аргументом timestamp
)
и местоположения.
Список параметров
-
timestamp
-
Временная метка (
timestamp
) дня, для которого определяется время рассвета. -
returnFormat
-
Константы returnFormat
константа описание пример SUNFUNCS_RET_STRING тип возвращаемого результата string 16:46 SUNFUNCS_RET_DOUBLE тип возвращаемого результата float 16.78243132 SUNFUNCS_RET_TIMESTAMP тип возвращаемого результата int (временная метка) 1095034606 -
latitude
-
По умолчанию в Северном полушарии, для Южного передается отрицательная величина. Смотрите также date.default_latitude.
-
longitude
-
По умолчанию восточная, для указания западной долготы передается отрицательная величина. Смотрите также date.default_longitude.
-
zenith
-
zenith
- это угол между центром Солнца и линией, перпендикулярной поверхности Земли. По умолчанию date.sunrise_zenithРаспространенные углы zenith
anglesУгол Опиание 90°50' Восход солнца: точка, где Солнце становится видимым. 96° Гражданские сумерки: обычно используются для обозначения начала рассвета. 102° Навигационные сумерки: точка, в которой горизонт становится видимым с моря. 108° Астрономические сумерки: точка, в которой Солнце начинает быть источником любого освещения. -
utcOffset
-
Задается в часах.
utcOffset
игнорируется, еслиreturnFormat
-SUNFUNCS_RET_TIMESTAMP
Возвращаемые значения
Возвращает время восхода солнца в заданном формате
returnFormat
или false
в случае возникновения ошибки. Одна из возможных причин неудачного выполнения - солнце не поднимается над горизонтом вообще, что происходит внутри полярных кругов в течение части года.
Ошибки
Каждый вызов к функциям даты/времени при неправильных настройках временной зоны сгенерирует ошибку уровня E_NOTICE
,
и/или ошибку уровня E_STRICT
или E_WARNING
при использовании системных
настроек или переменной окружения TZ. Смотрите также date_default_timezone_set()
Список изменений
Версия | Описание |
---|---|
8.0.0 |
latitude , longitude ,
zenith и latitude теперь допускают значение null.
|
Примеры
Пример #1 Пример использования date_sunrise()
<?php
/* расчет времени восхода солнца в Лиссабоне, Португалия
Latitude: 38.4 North
Longitude: 9 West
Zenith ~= 90
offset: +1 GMT
*/
echo date("D M d Y"). ', время восхода солнца : ' .date_sunrise(time(), SUNFUNCS_RET_STRING, 38.4, -9, 90, 1);
?>
Результатом выполнения данного примера будет что-то подобное:
Mon Dec 20 2004, время восхода солнца : 08:54
Пример #2 Нет восхода солнца
<?php
$solstice = strtotime('2017-12-21');
var_dump(date_sunrise($solstice, SUNFUNCS_RET_STRING, 69.245833, -53.537222));
?>
Результат выполнения данного примера:
bool(false)
Смотрите также
- date_sunset() - Возвращает время захода солнца для заданных дня и местоположения
- date_sun_info() - Возвращает массив с информацией о закате/рассвете и начале/окончании сумерек