(PHP 5 >= 5.1.2, PHP 7)
date_sun_info — Returns an array with information about sunset/sunrise and twilight begin/end
$timestamp
, float $latitude
, float $longitude
) : array|false
timestamp
Unix timestamp.
latitude
Latitude in degrees.
longitude
Longitude in degrees.
Returns array on successIm Fehlerfall wird FALSE
zurückgegeben..
The structure of the array is detailed in the following list:
sunrise
sunset
transit
civil_twilight_begin
sunrise
.
civil_twilight_end
sunset
.
nautical_twilight_begin
civil_twilight_begin
.
nautical_twilight_end
civil_twilight_end
.
astronomical_twilight_begin
nautical_twilight_begin
.
astronomical_twilight_end
nautical_twilight_end
.
The values of the array elements are either UNIX timestamps, FALSE
if the
sun is below the respective zenith for the whole day, or TRUE
if the sun is
above the respective zenith for the whole day.
Beispiel #1 A date_sun_info() example
<?php
$sun_info = date_sun_info(strtotime("2006-12-12"), 31.7667, 35.2333);
foreach ($sun_info as $key => $val) {
echo "$key: " . date("H:i:s", $val) . "\n";
}
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
sunrise: 05:52:11 sunset: 15:41:21 transit: 10:46:46 civil_twilight_begin: 05:24:08 civil_twilight_end: 16:09:24 nautical_twilight_begin: 04:52:25 nautical_twilight_end: 16:41:06 astronomical_twilight_begin: 04:21:32 astronomical_twilight_end: 17:12:00
Beispiel #2 Polar night
<?php
var_dump(date_sun_info(strtotime("2017-12-21"), 90, 0));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(9) { ["sunrise"]=> bool(false) ["sunset"]=> bool(false) ["transit"]=> int(1513857490) ["civil_twilight_begin"]=> bool(false) ["civil_twilight_end"]=> bool(false) ["nautical_twilight_begin"]=> bool(false) ["nautical_twilight_end"]=> bool(false) ["astronomical_twilight_begin"]=> bool(false) ["astronomical_twilight_end"]=> bool(false) }
Beispiel #3 Midnight sun
<?php
var_dump(date_sun_info(strtotime("2017-06-21"), 90, 0));
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
array(9) { ["sunrise"]=> bool(true) ["sunset"]=> bool(true) ["transit"]=> int(1498046510) ["civil_twilight_begin"]=> bool(true) ["civil_twilight_end"]=> bool(true) ["nautical_twilight_begin"]=> bool(true) ["nautical_twilight_end"]=> bool(true) ["astronomical_twilight_begin"]=> bool(true) ["astronomical_twilight_end"]=> bool(true) }