date_sunrise

(PHP 5, PHP 7)

date_sunrise Возвращает время рассвета для заданных дня и местоположения

Описание

mixed date_sunrise ( int $timestamp [, int $format = SUNFUNCS_RET_STRING [, float $latitude = ini_get("date.default_latitude") [, float $longitude = ini_get("date.default_longitude") [, float $zenith = ini_get("date.sunrise_zenith") [, float $gmt_offset = 0 ]]]]] )

date_sunrise() возвращает время рассвета для определенных дня (заданного аргументом timestamp) и местоположения.

Список параметров

timestamp

Временная метка (timestamp) дня, для которого определяется время рассвета.

format

Константы format
константа описание пример
SUNFUNCS_RET_STRING тип возвращаемого результата string 16:46
SUNFUNCS_RET_DOUBLE тип возвращаемого результата float 16.78243132
SUNFUNCS_RET_TIMESTAMP тип возвращаемого результата integer (временная метка) 1095034606

latitude

По умолчанию в Северном полушарии, для Южного передается отрицательная величина. См. также date.default_latitude.

longitude

По умолчанию восточная, для указания западной долготы передается отрицательная величина. См. также date.default_longitude.

zenith

zenith - это угол между центром Солнца и линией, перпендикулярной поверхности Земли. По умолчанию date.sunrise_zenith

Распространенные углы zenith angles
Угол Опиание
90°50' Восход солнца: точка, где Солнце становится видимым.
96° Гражданские сумерки: обычно используются для обозначения начала рассвета.
102° Навигационные сумерки: точка, в которой горизонт становится видимым с моря.
108° Астрономические сумерки: точка, в которой Солнце начинает быть источником любого освещения.

gmtoffset

Задается в часах. gmtoffset игнорируется, если format - SUNFUNCS_RET_TIMESTAMP

Возвращаемые значения

Возвращает время восхода солнца в заданном формате format или FALSE в случае возникновения ошибки. Одна из возможных причин неудачного выполнения - солнце не поднимается над горизонтом вообще, что происходит внутри полярных кругов в течение части года.

Ошибки

Каждый вызов к функциям даты/времени при неправильных настройках временной зоны сгенерирует ошибку уровня E_NOTICE, и/или ошибку уровня E_STRICT или E_WARNING при использовании системных настроек или переменной окружения TZ. Смотрите также date_default_timezone_set()

Список изменений

Версия Описание
5.1.0

Теперь ошибки, связанные с временными зонами, генерируют ошибки уровня E_STRICT и E_NOTICE.

Примеры

Пример #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_STRING38.4, -9901);

?>

Результатом выполнения данного примера будет что-то подобное:

Mon Dec 20 2004, время восхода солнца : 08:54

Пример #2 Нет восхода солнца

<?php
$solstice 
strtotime('2017-12-21');
var_dump(date_sunrise($solsticeSUNFUNCS_RET_STRING69.245833, -53.537222));
?>

Результат выполнения данного примера:

bool(false)

Смотрите также

  • date_sunset() - Возвращает время захода солнца для заданных дня и местоположения
  • date_sun_info() - Возвращает массив с информацией о закате/рассвете и начале/окончании сумерек