php8.5
Home/ Manual/ datetime / functions/ date_sunrise

date_sunrise

PHP function Deprecated as of PHP 8.1.0 Edit on GitHub ✎

(PHP 5, PHP 7, PHP 8)

Returns time of sunrise for a given day and location

This function has been DEPRECATED as of PHP 8.1.0. Relying on this function is highly discouraged. Use date_sun_info() instead.

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 = null): 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
constantdescriptionexample
SUNFUNCS_RET_STRINGreturns the result as string16:46
SUNFUNCS_RET_DOUBLEreturns the result as float16.78243132
SUNFUNCS_RET_TIMESTAMPreturns 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_zenith

AngleDescription
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, if returnFormat is SUNFUNCS_RET_TIMESTAMP.

Return Values

Returns the sunrise time in a specified returnFormat on successFalseforfailure. 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 Description

Changelog

VersionDescription
8.1.0This function has been deprecated in favor of date_sun_info().
8.0.0latitude, longitude, zenith and utcOffset are nullable now.

Examples

date_sunrise() example

php
<?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:

output
Deprecated: Constant SUNFUNCS_RET_STRING is deprecated in script on line 10
Deprecated: Function date_sunrise() is deprecated since 8.1, use date_sun_info() instead in script on line 10
Mon Dec 20 2004, sunrise time : 08:54

No sunrise

php
<?php
$solstice = strtotime('2017-12-21');
var_dump(date_sunrise($solstice, SUNFUNCS_RET_STRING, 69.245833, -53.537222));

The above example will output:

output
Deprecated: Constant SUNFUNCS_RET_STRING is deprecated in script on line 3
Deprecated: Function date_sunrise() is deprecated since 8.1, use date_sun_info() instead in script on line 3
bool(false)

See Also

Source: reference/datetime/functions/date-sunrise.xml · from the official PHP manual (php/doc-en)