English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Manuale di base PHP

Manuale avanzato PHP

PHP e MySQL

Manuale di riferimento PHP

Uso e esempio della funzione date_sun_info() in PHP

Manuale delle funzioni di data e ora PHP

La funzione date_sun_info() restituisce un array che contiene informazioni sull'alba/tramonto e l'inizio/fine del crepuscolo per una data e un luogo specifici.

Definizione e utilizzo

La funzione date_sun_info() accetta la posizione temporale, latitudine e longitudine e fornisce informazioni su alba/tramonto e inizio/fine del crepuscolo nella posizione data.

语法

date_sun_info($timestamp, $latitude, $longitude)

参数

序号参数及说明
1

timestamp (必需)

这指定一个时间戳。

2

latitude (必需)

这指定位置的纬度。

3

longitude (必需)

这指定位置的经度。

返回值

date_sun_info()函数返回一个数组,该数组包含有关指定位置中给定日期的日出/日落以及黄昏的开始/结束的信息。

PHP版本

此函数最初是在PHP版本5.2.0中引入的,并且可以在所有更高版本中使用。

esempio online

以下示例演示了date_sun_info()函数的用法-

<?php
   $sun_info = date_sun_info("02-17-2012", 20.5937, 78.9629);
   print_r($sun_info);
?>
prova a vedere‹/›

risultato di output

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
)

esempio online

以下示例获取同一日期在不同位置的信息-

<?php
   $sun_info = date_sun_info("02-17-2012", 37.0902, 95.7129);
   print_r($sun_info);
?>
prova a vedere‹/›

risultato di output

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
    [oscurità astrale fine] => 43402
)

esempio online

Segue un esempio di come ottenere informazioni sulla posizione in diverse date-

<?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));
?>
prova a vedere‹/›

risultato di output

Array
(
    [alba] => 16742
    [sotto il sole] => 53161
    [transito] => 34951
    [inizio oscurità civile] => 15138
    [oscurità civile fine] => 54765
    [inizio oscurità nautica] => 13316
    [oscurità nautica fine] => 56587
    [inizio oscurità astrale] => 11534
    [oscurità astrale fine] => 58369
)
Array
(
    [alba] => 16742
    [sotto il sole] => 53161
    [transito] => 34951
    [inizio oscurità civile] => 15138
    [oscurità civile fine] => 54765
    [inizio oscurità nautica] => 13316
    [oscurità nautica fine] => 56587
    [inizio oscurità astrale] => 11534
    [oscurità astrale fine] => 58369
)
Array
(
    [alba] => 16742
    [sotto il sole] => 53161
    [transito] => 34951
    [inizio oscurità civile] => 15138
    [oscurità civile fine] => 54765
    [inizio oscurità nautica] => 13316
    [oscurità nautica fine] => 56587
    [inizio oscurità astrale] => 11534
    [oscurità astrale fine] => 58369
)

esempio online

<?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";
   }
?>
prova a vedere‹/›

risultato di output

alba: 00:11:03
sotto il sole: 13:28:33
transito: 06:49:48
inizio oscurità civile: 23:46:45
oscurità civile fine: 13:52:51
inizio oscurità nautica: 23:17:48
oscurità nautica fine: 14:21:47
inizio oscurità astrale: 22:47:55
oscurità astrale fine: 14:51:41