현재 위치: > 최신 기사 목록> 한 달 내내 매일 일몰 시간을 얻는 방법의 예

한 달 내내 매일 일몰 시간을 얻는 방법의 예

M66 2025-05-31

많은 응용 분야에서 천문학, 지리 또는 라이프 스타일과 관련된 일부 응용 분야에서는 매일 일몰 시간을 얻는 것이 매우 중요합니다. 예를 들어, 일부 앱은 일몰 시간을 기준으로 작업을 예약하거나 야간 활동을 시작할 때 사용자에게 상기시킬 수 있습니다. 이 기사에서는 PHP를 사용하여 매일 일몰 시간을 매일 일몰 시간을 얻는 방법을 설명하며 자세한 코드 예제.

일몰 시간의 기본 원리를 얻으십시오

일몰 시간을 얻는 것은 일반적으로 천문 알고리즘을 사용하여 계산됩니다. 일반적인 접근법은 경도와 위도를 통해 특정 위치의 상승 및 하강 시간을 계산하는 도구 인 SunCalc 라이브러리를 사용하는 것입니다. SunCalc API에 요청을 보내서 매일 일몰 시간을 얻을 수 있습니다.

이 게시물에서는 API를 호출하여 특정 위치의 일몰 시간을 얻고 PHP 코드를 사용 하여이 데이터가 처리되는 방법을 보여줍니다.

PHP 코드 예제

다음은 API를 통해 지정된 위치의 일몰 시간을 얻는 방법을 보여주는 PHP 코드 예제입니다. 우리는 매일 한 달 동안 일몰 시간을 얻고 출력 할 것입니다. 여기서 우리는 대상 위치의 위도와 경도가 알려져 있다고 가정합니다.

 <?php

// 대상 위치의 위도와 경도를 설정하십시오
$latitude = 40.7128;  // 예를 들어:뉴욕의 위도
$longitude = -74.0060; // 예를 들어:뉴욕의 경도

// 목표API URL,대체하십시오 m66.net 도메인 이름
$url = "https://api.m66.net/sunrise-sunset?lat=$latitude&lng=$longitude&date=today&formatted=0";

// 현재 달의 일몰 시간을 얻으십시오
function getSunsetTimes($latitude, $longitude) {
    // 현재 달
    $currentMonth = date('m');

    // 매일 일몰 시간을 보관하십시오
    $sunsetTimes = [];

    // 매일 일몰 시간을 얻으십시오
    for ($day = 1; $day <= 31; $day++) {
        // 형식 날짜
        $date = date('Y-m') . '-' . str_pad($day, 2, '0', STR_PAD_LEFT);

        // 요청 요청URL
        $apiUrl = "https://api.m66.net/sunrise-sunset?lat=$latitude&lng=$longitude&date=$date&formatted=0";

        // 시작API묻다
        $response = file_get_contents($apiUrl);

        // 응답이 유효한지 확인하십시오
        if ($response === FALSE) {
            echo "Error fetching data for $date\n";
            continue;
        }

        // 분석JSON응답
        $data = json_decode($response, true);

        // 일몰 시간을 얻으십시오
        if (isset($data['results']['sunset'])) {
            $sunsetTimes[$date] = $data['results']['sunset'];
        } else {
            echo "No sunset data available for $date\n";
        }
    }

    return $sunsetTimes;
}

// 함수를 호출하고 결과를 출력하십시오
$sunsetTimes = getSunsetTimes($latitude, $longitude);

echo "일몰 시간은 다음과 같습니다:\n";
foreach ($sunsetTimes as $date => $sunsetTime) {
    echo "$date: $sunsetTime\n";
}

?>

코드 구문 분석

  1. 위도 및 경도 설정 : 코드에서 우리는 뉴욕의 위도와 경도를 설정했습니다 (40.7128, -74.0060). 필요에 따라 다른 장소의 위도와 경도를 수정할 수 있습니다.

  2. API 요청 : https://api.m66.net/sunrise-sunset 에 요청을 보내서 특정 날짜의 일몰 시간을 얻습니다. API의 응답은 JSON 형식으로 리턴되므로 JSON_DECODE 기능을 사용하여 응답 데이터를 구문 분석합니다.

  3. 일몰 시간을 얻으십시오 : 루핑으로, 우리는 현재 달의 매일 일몰 시간을 얻고 $ SunsetTimes 배열에 저장하고 결국 결과를 출력합니다.

  4. 날짜 형식 : 날짜 () 함수를 사용하여 현재 달을 가져오고 날짜를 YMD 형식으로 형식화합니다.

  5. 출력 결과 : 마지막으로 코드는 매일 일몰 시간을 출력합니다. 특정 날에 데이터가 없으면 (예 : API로 반환 된 결과가 비어 있음) 오류 메시지가 출력됩니다.

요약

이 기사와 코드 예제를 사용하면 한 달 내내 지정된 위치의 매일 일몰 시간을 쉽게 얻을 수 있습니다. 위도와 경도를 조정하고 API 요청의 URL이 올바르고 모든 위치 및 날짜 범위에 적용 할 수 있는지 확인하십시오. 이 방법은 날씨 관련 응용 프로그램뿐만 아니라 농업, 관광 또는 햇빛 정보가 필요한 기타 시나리오에도 적합합니다.

이 기사가 도움이되기를 바랍니다. 질문이 있으시면 언제든지 물어보십시오!