函数: date_sun_info()
适用版本: PHP 5以上
用法: date_sun_info(datetime $time, float $latitude, float $longitude) : array
函数date_sun_info()用于返回指定日期和地理位置的日出和日落信息。该函数接受三个参数:时间、纬度和经度,并返回一个数组,包含日出、日落和黄昏(民用)时间的详细信息。
参数:
- $time:必需,一个包含日期和时间信息的DateTime对象。
- $latitude:必需,地理位置的纬度。负数表示南半球。
- $longitude:必需,地理位置的经度。负数表示西半球。
返回值: 一个包含日出、日落和黄昏时间详细信息的关联数组。数组包括以下键:
- sunrise:日出时间,格式为 "HH:MM:SS"。
- sunset:日落时间,格式为 "HH:MM:SS"。
- transit:太阳近似到达最高位置的时间,格式为 "HH:MM:SS"。
- civil_twilight_begin:黄昏(民用)开始的时间,格式为 "HH:MM:SS"。
- civil_twilight_end:黄昏(民用)结束的时间,格式为 "HH:MM:SS"。
示例:
// 当前日期时间和地理位置的日出和日落信息
$date = new DateTime('now');
$latitude = 37.7749; // 圣弗朗西斯科的纬度
$longitude = -122.4194; // 圣弗朗西斯科的经度
$sunInfo = date_sun_info($date, $latitude, $longitude);
echo "日出时间:" . $sunInfo['sunrise'] . "<br>";
echo "日落时间:" . $sunInfo['sunset'] . "<br>";
echo "黄昏(民用)开始时间:" . $sunInfo['civil_twilight_begin'] . "<br>";
echo "黄昏(民用)结束时间:" . $sunInfo['civil_twilight_end'] . "<br>";
输出:
日出时间:06:22:27
日落时间:17:53:18
黄昏(民用)开始时间:05:56:35
黄昏(民用)结束时间:18:18:10
上述示例中,我们获取了当前日期和圣弗朗西斯科的纬度和经度,然后使用date_sun_info()函数获取了日出、日落和黄昏开始和结束的时间信息,并将其打印出来。