date_sunset

(PHP 5, PHP 7, PHP 8)

date_sunset Devuelve la hora de puesta del sol para un día y un lugar dados

Advertencia

Esta función está DEPRECADA a partir de PHP 8.1.0. Depender de esta función se desaconseja fuertemente. Se recomienda el uso de date_sun_info() en su lugar.

Descripción

#[\Deprecated]
date_sunset(
    int $timestamp,
    int $returnFormat = SUNFUNCS_RET_STRING,
    ?float $latitude = null,
    ?float $longitude = null,
    ?float $zenith = null,
    ?float $utcOffset = null
): string|int|float|false

La función date_sunset() devuelve la hora de puesta del sol para un día (especificado como timestamp Unix) y un lugar dados.

Parámetros

timestamp

El timestamp Unix del día para el cual se proporciona la hora de puesta del sol.

returnFormat

Constantes para el parámetro returnFormat
Constante Descripción Ejemplo
SUNFUNCS_RET_STRING Devuelve el resultado en forma de string 16:46
SUNFUNCS_RET_DOUBLE Devuelve el resultado en forma de float 16.78243132
SUNFUNCS_RET_TIMESTAMP Devuelve el resultado en forma de int (timestamp) 1095034606

latitude

Por omisión, es el Norte. Pase un valor negativo para el Sur. Ver también date.default_latitude.

longitude

Por omisión, es el Este. Pase un valor negativo para el Oeste. Ver también date.default_longitude.

zenith

zenith es el ángulo entre el centro del sol y la línea perpendicular a la superficie de la tierra. Por omisión date.sunset_zenith

Valores comunes de ángulo zenith
Ángulo Descripción
90°50' Puesta del sol: El punto donde el sol se vuelve invisible.
96° Crepúsculo civil: convencionalmente utilizado para significar el fin del crepúsculo.
102° Crepúsculo náutico: el punto de fin del horizonte siendo visible en el mar.
108° Crepúsculo astronómico: el punto donde el sol deja de ser la fuente de toda iluminación.

utcOffset

Especificado en horas. El utcOffset es ignorado, si returnFormat es SUNFUNCS_RET_TIMESTAMP.

Valores devueltos

Devuelve la hora de puesta del sol en el returnFormat especificado o false en caso de error. Una razón posible del fallo es que el sol no se pone, lo cual ocurre dentro de los círculos polares durante parte del año.

Errores/Excepciones

Cada vez que se llame a una función de fecha/hora se generará un E_NOTICE si la zona horaria no es válida, y/o un mensaje E_STRICT o E_WARNING si se emplea la configuración del sistema o la variable global TZ. Véase también date_default_timezone_set()

Historial de cambios

Versión Descripción
8.1.0 Esta función ha sido marcada como obsoleta en favor de date_sun_info().
8.0.0 latitude, longitude, zenith y utcOffset ahora son nullable.

Ejemplos

Ejemplo #1 Ejemplo con date_sunset()

<?php

/* Calcula la hora de puesta del sol para Lisboa, Portugal
Latitud: 38.4 Norte
Longitud: 9 Oeste
Zenith ~= 90
offset:1 GMT
*/

echo date("D M d Y"). ', hora de puesta del sol : ' .date_sunset(time(), SUNFUNCS_RET_STRING, 38.4, -9, 90, 1);

?>

El resultado del ejemplo sería algo similar a:

Mon Dec 20 2004, hora de puesta del sol : 18:13

Ejemplo #2 Sin puesta de sol

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

El resultado del ejemplo sería:

bool(false)

Ver también

  • date_sun_info() - Retorna un array con las informaciones sobre el amanecer/atardecer así como el inicio y el fin del amanecer

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top