PHP 8.3.4 Released!

date_sun_info

(PHP 5 >= 5.1.2, PHP 7, PHP 8)

date_sun_infoDevuelve una matriz con información sobre la puesta/salida del sol y el comienzo/final del crepúsculo

Descripción

date_sun_info(int $time, float $latitude, float $longitude): array

Parámetros

time

Marca de tiempo.

latitude

Latitud en grados.

longitude

Longitud en grados.

Valores devueltos

Devuelve una matriz si se tuvo éxito o false en caso de error.

Ejemplos

Ejemplo #1 Un ejemplo de date_sun_info()

<?php
$sun_info
= date_sun_info(strtotime("2006-12-12"), 31.7667, 35.2333);
foreach (
$sun_info as $clave => $valor) {
echo
"$clave: " . date("H:i:s", $valor) . "\n";
}
?>

El resultado del ejemplo sería:

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

Ver también

  • date_sunrise() - Devuelve la hora de la salida del sol de un día y ubicación dados
  • date_sunset() - Devuelve la hora de la puesta de sol de un día y ubicación dados

add a note

User Contributed Notes 1 note

up
7
TheFax
1 year ago
In the last example, conversion from seconds to Hour, Minutes, Seconds is wrong.
This is the correct verion:

<?php
$si
= date_sun_info(strtotime('2022-08-26'), 50.45, 30.52);
$diff = $si['sunset'] - $si['sunrise']; # $diff is measured in seconds.
echo "Length of day: ",
floor($diff / 3600), "h",
floor(($diff % 3600) / 60), "m",
floor($diff % 60), "s\n";
?>

Output:
Length of day: 13h53m15s
To Top