Função PHP date_sun_info ()
Definição e Uso
o date_sun_info() A função aceita o tempo, latitudes e longitudes de um local e fornece informações sobre o nascer / pôr do sol e, início / fim do crepúsculo, no local determinado.
Sintaxe
date_sun_info($timestamp, $latitude, $longitude)
Parâmetros
Sr. Não | Parâmetro e Descrição |
---|---|
1 |
timestamp (Mandatory) Isso especifica um carimbo de data / hora. |
2 |
latitude (Mandatory) Isso especifica a latitude de um local. |
3 |
longitude (Mandatory) Isso especifica a longitude de um local. |
Valores Retornados
A função PHP date_sun_info () retorna um array contendo as informações sobre o amanhecer / pôr do sol e, início / fim do crepúsculo de um determinado dia no local especificado.
Versão PHP
Esta função foi introduzida pela primeira vez no PHP versão 5.2.0 e funciona com todas as versões posteriores.
Exemplo
O exemplo a seguir demonstra o uso da função date_sun_info () -
<?php
$sun_info = date_sun_info("02-17-2012", 20.5937, 78.9629);
print_r($sun_info);
?>
Isso produzirá o seguinte resultado -
Array
(
[sunrise] => 4818
[sunset] => 44087
[transit] => 24453
[civil_twilight_begin] => 3381
[civil_twilight_end] => 45524
[nautical_twilight_begin] => 1729
[nautical_twilight_end] => 47176
[astronomical_twilight_begin] => 98
[astronomical_twilight_end] => 48807
)
Exemplo
O exemplo a seguir obtém as informações na mesma data em local diferente -
<?php
$sun_info = date_sun_info("02-17-2012", 37.0902, 95.7129);
print_r($sun_info);
?>
Isso produzirá o seguinte resultado -
Array
(
[sunrise] => 3038
[sunset] => 37825
[transit] => 20431
[civil_twilight_begin] => 1307
[civil_twilight_end] => 39556
[nautical_twilight_begin] => -642
[nautical_twilight_end] => 41505
[astronomical_twilight_begin] => -2538
[astronomical_twilight_end] => 43402
)
Exemplo
O exemplo a seguir obtém as informações no local em datas diferentes -
<?php
$time = "2000-01-01";
$latitude = 31.7667;
$longitude = 35.2333;
print_r(date_sun_info($time, $latitude, $longitude));
$time = "2010-01-01";
print_r(date_sun_info($time, $latitude, $longitude));
$time = "2020-01-01";
print_r(date_sun_info($time, $latitude, $longitude));
?>
Isso produzirá o seguinte resultado -
Array
(
[sunrise] => 16742
[sunset] => 53161
[transit] => 34951
[civil_twilight_begin] => 15138
[civil_twilight_end] => 54765
[nautical_twilight_begin] => 13316
[nautical_twilight_end] => 56587
[astronomical_twilight_begin] => 11534
[astronomical_twilight_end] => 58369
)
Array
(
[sunrise] => 16742
[sunset] => 53161
[transit] => 34951
[civil_twilight_begin] => 15138
[civil_twilight_end] => 54765
[nautical_twilight_begin] => 13316
[nautical_twilight_end] => 56587
[astronomical_twilight_begin] => 11534
[astronomical_twilight_end] => 58369
)
Array
(
[sunrise] => 16742
[sunset] => 53161
[transit] => 34951
[civil_twilight_begin] => 15138
[civil_twilight_end] => 54765
[nautical_twilight_begin] => 13316
[nautical_twilight_end] => 56587
[astronomical_twilight_begin] => 11534
[astronomical_twilight_end] => 58369
)
Exemplo
<?php
$sun_info = date_sun_info(strtotime("2017-07-12"), 20.5937, 78.9629);
foreach ($sun_info as $key => $val) {
echo "$key: " . date("H:i:s", $val) . "\n";
}
?>
Isso produzirá o seguinte resultado -
sunrise: 00:11:03
sunset: 13:28:33
transit: 06:49:48
civil_twilight_begin: 23:46:45
civil_twilight_end: 13:52:51
nautical_twilight_begin: 23:17:48
nautical_twilight_end: 14:21:47
astronomical_twilight_begin: 22:47:55
astronomical_twilight_end: 14:51:41