date_sunrise
(PHP 5, PHP 7)
date_sunrise — Returns time of sunrise for a given day and location
Description
date_sunrise ( int $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() returns the sunrise time for a given day (specified as a timestamp
) and location.
Parameters
-
timestamp
-
The
timestamp
of the day from which the sunrise time is taken. -
returnFormat
-
returnFormat
constantsconstant description example SUNFUNCS_RET_STRING returns the result as string 16:46 SUNFUNCS_RET_DOUBLE returns the result as float 16.78243132 SUNFUNCS_RET_TIMESTAMP returns the result as int (timestamp) 1095034606 -
latitude
-
Defaults to North, pass in a negative value for South. See also: date.default_latitude
-
longitude
-
Defaults to East, pass in a negative value for West. See also: date.default_longitude
-
zenith
-
zenith
is the angle between the center of the sun and a line perpendicular to earth's surface. It defaults to date.sunrise_zenithCommon zenith
anglesAngle Description 90°50' Sunrise: the point where the sun becomes visible. 96° Civil twilight: conventionally used to signify the start of dawn. 102° Nautical twilight: the point at which the horizon starts being visible at sea. 108° Astronomical twilight: the point at which the sun starts being the source of any illumination. -
utcOffset
-
Specified in hours. The
utcOffset
is ignored, ifreturnFormat
isSUNFUNCS_RET_TIMESTAMP
.
Return Values
Returns the sunrise time in a specified returnFormat
on success or false
on failure. One potential reason for failure is that the sun does not rise at all, which happens inside the polar circles for part of the year.
Errors/Exceptions
Every call to a date/time function will generate a E_NOTICE
if the time zone is not valid, and/or a E_STRICT
or E_WARNING
message if using the system settings or the TZ environment variable. See also date_default_timezone_set()
Changelog
Version | Description |
---|---|
8.0.0 | latitude , longitude , zenith and latitude are nullable now. |
Examples
Example #1 date_sunrise() example
<?php /* calculate the sunrise time for Lisbon, Portugal Latitude: 38.4 North Longitude: 9 West Zenith ~= 90 offset: +1 GMT */ echo date("D M d Y"). ', sunrise time : ' .date_sunrise(time(), SUNFUNCS_RET_STRING, 38.4, -9, 90, 1); ?>
The above example will output something similar to:
Mon Dec 20 2004, sunrise time : 08:54
Example #2 No sunrise
<?php $solstice = strtotime('2017-12-21'); var_dump(date_sunrise($solstice, SUNFUNCS_RET_STRING, 69.245833, -53.537222)); ?>
The above example will output:
bool(false)
See Also
- date_sunset() - Returns time of sunset for a given day and location
- date_sun_info() - Returns an array with information about sunset/sunrise and twilight begin/end
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.date-sunrise.php