현재 위치: > 최신 기사 목록> Cron 타이밍 스크립트와 결합하여 매일 일몰 시간을 정기적으로 밀어 넣습니다.

Cron 타이밍 스크립트와 결합하여 매일 일몰 시간을 정기적으로 밀어 넣습니다.

M66 2025-06-02

CRON 타이밍 스크립트를 결합하여 매일 PHP의 date_sunset을 사용하여 얻은 일몰 시간을 정기적으로 밀어 넣는 방법은 무엇입니까?

시간 기반 푸시 시스템을 개발할 때는 종종 타이밍 작업을 사용하여 일부 작업을 자동으로 수행합니다. 예를 들어, 특정 영역의 일몰 시간을 정기적으로 얻고 지정된 인터페이스 또는 사용자에게 푸시 할 수 있습니다. 이 기사는 CRON 타이밍 작업과 결합 된 PHP의 date_sunset 함수를 사용하여 매일 일몰 시간을 정기적으로 추진하는 기능을 실현합니다.

1. 일몰 시간을 얻으십시오

먼저, 일몰 시간을 얻으려면 PHP의 date_sunset 함수를 사용해야합니다. 이 기능은 위도, 경도 및 타임 스탬프와 같은 매개 변수를 사용하고 일몰 시간을 반환합니다.

 <?php
// 시간대를 설정하십시오
date_default_timezone_set('Asia/Shanghai');

// 위도와 경도를 정의하십시오
$latitude = 39.9042; // 베이징의 위도
$longitude = 116.4074; // 베이징의 경도

// 일몰 시간을 얻으십시오(~에 의해 Unix 타임 스탬프가 반환됩니다)
$sunset = date_sunset(time(), SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);

// 일몰 시간을 읽을 수있는 형식으로 포맷하십시오
$sunset_time = date("Y-m-d H:i:s", $sunset);
echo "오늘의 일몰 시간: " . $sunset_time;
?>

2. Cron 타이밍 작업과 결합

우리는 매일 일몰 시간을 정기적으로 밀고 싶어서 CRON 타임 테이블을 사용 하여이 PHP 스크립트를 실행해야합니다.

2.1 PHP 스크립트 작성

이미 일몰 시간을 얻기위한 PHP 코드가 있으며,이 코드는 send_sunset_time.php 와 같은 PHP 스크립트에 작성해야합니다. 스크립트에 푸시 코드를 추가하여 일몰 시간을 지정된 URL로 푸시 할 수 있습니다.

 <?php
// 시간대를 설정하십시오
date_default_timezone_set('Asia/Shanghai');

// 위도와 경도를 정의하십시오
$latitude = 39.9042;
$longitude = 116.4074;

// 일몰 시간을 얻으십시오
$sunset = date_sunset(time(), SUNFUNCS_RET_TIMESTAMP, $latitude, $longitude);
$sunset_time = date("Y-m-d H:i:s", $sunset);

// 일몰 시간을 지정된 사람으로 밀어 넣습니다 URL(그것을 가정합니다 API 인터페이스)
$api_url = 'https://m66.net/api/send_sunset_time'; // 실제로 교체하십시오 URL
$data = array(
    'sunset_time' => $sunset_time
);

// 사용 cURL 보내다 POST 묻다
$ch = curl_init($api_url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));

$response = curl_exec($ch);
curl_close($ch);

if ($response) {
    echo "일몰 시간이 성공적으로 추진되었습니다: " . $sunset_time;
} else {
    echo "푸시 실패";
}
?>

2.2 Cron 타이밍 작업 설정

CRON 은 Linux 시스템에서 시간이 지정된 작업 스케줄러입니다. Crontab을 편집하여 매일 PHP 스크립트를 실행하도록 설정할 수 있습니다.

  1. Crontab 파일 열기 :

     crontab -e
    
  2. 매일 지정된 시간에 실행하도록 스크립트를 설정하려면 라인을 추가하십시오 (예 : 매일 오후 6시) :

     0 18 * * * /usr/bin/php /path/to/your/script/send_sunset_time.php
    

    이 명령 줄의 의미는 다음과 같습니다. 매일 18:00에 send_sunset_time.php 스크립트를 실행하십시오.

  3. Crontab 파일을 저장하고 종료하면 시간이 정한 작업이 적용됩니다.

3. 완전한 구현

위의 단계를 통해, 우리는 PHP를 사용하여 일몰 시간을 얻고 이번에는 CRON 타이밍 작업을 통해 지정된 URL로 푸시했습니다.

시스템이 실행될 때마다 시스템은 현재 날짜의 일몰 시간을 자동으로 가져 와서 URL로 푸시합니다 (위 코드에서 URL이 M66.net 으로 대체 됨). 이것은 우리가 정기적으로 하루의 일몰 시간을 관련 시스템으로 밀어 넣는 데 도움이 될 수 있습니다.

요약

PHP의 date_sunset 함수를 통해 일몰 시간을 쉽게 얻을 수 있습니다. Cron 타이밍 작업과 결합 하여이 정보를 매일 고정 된 시간에 푸시 할 수 있습니다. 이 방법은 일기 예보, 일출 및 일몰 알림 등과 같은 시간 기반 푸시 시스템에서 널리 사용될 수 있습니다.