Bienvenidos sean a este post, hoy veremos una función de PHP.
Esta función nos informa tanto la hora de amanecer como de puesta del sol, como otros datos relacionados al sol. Pasemos a ver como es su sintaxis:
date_sun_info(timestamp, latitud, longitud);
Para obtener este dato vamos a necesitar varios datos. El primero va a ser la hora de nuestro equipo, por lo general es recomendable usar a la función time que nos entregará este dato que es en formato UNIX. El segundo parámetro es para indicar la latitud de donde queremos obtener el dato. Los valores positivos son para el Norte y los negativos para el Sur. El tercer parámetro es para la longitud, al igual que el anterior los valores positivos son para el Este y negativos para el Oeste.
A diferencia de date_sunrise y date_sunset, los tres parámetros son obligatorios y deben ser informados. También nos devuelve los valores de ambas funciones. Por otro lado, las funciones anteriores se pueden seguir usando pero ya están consideradas como obsoletas y seguramente en breve se eliminen. Por lo tanto, se recomienda usar esta función para obtener ambos datos. Veamos como utilizarlo mediante el siguiente ejemplo:
$sol = date_sun_info(time(),-33,-65);print_r($sol);
Vamos a usar nuestra función pero como devuelve un array con valores, lo asignaremmos a uno. En nuestra función usamos a time para que nos asigne la hora actual. Luego paso las coordenadas de longitud y latitud. Para finalmente mostrar todos los valores devueltos mediante print_r. Veamos como es la salida:
$ php date_sun_info.phpArray( [sunrise] => 1774175021 [sunset] => 1774218595 [transit] => 1774196808 [civil_twilight_begin] => 1774173618 [civil_twilight_end] => 1774219998 [nautical_twilight_begin] => 1774171894 [nautical_twilight_end] => 1774221722 [astronomical_twilight_begin] => 1774170155 [astronomical_twilight_end] => 1774223460)$
Observen los distintos datos que nos devolvió, es una gran variedad donde se incluyen los comentados en el post. Pero todos con formato de tiempo UNIX. Aunque esto podemos mejorarlo, tomemos el código anterior y hagamos el siguiente cambio:
$sol = date_sun_info(time(),-33,-65);foreach ($sol as $clave => $valor) echo "$clave: " . date("H:i:s", $valor) . "\n";
Simplemente le agregamos un bucle foreach para pasar por todos los valores en el array. En este almacenamos las claves y los valores para luego mostrar la clave y luego el valor. Pero a este último le aplicamos un formato para mostrarlo en mejor forma con respecto al caso anterior. Veamos como es la salida:
$ php date_sun_info.phpsunrise: 10:23:41sunset: 22:29:55transit: 16:26:48civil_twilight_begin: 10:00:18civil_twilight_end: 22:53:18nautical_twilight_begin: 09:31:34nautical_twilight_end: 23:22:02astronomical_twilight_begin: 09:02:35astronomical_twilight_end: 23:51:00$
En resumen, hoy hemos visto a date_sunset, que es, para que sirve, como se utiliza, los parámetros que podemos utilizar y un ejemplo simple para ver como trabaja. Espero les haya sido de utilidad, les dejo algunas de mis redes sociales para seguirme o recibir una notificacion cada vez que subo un nuevo post:


Donación
Es para mantenimento del sitio, gracias!
$1.50





