Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP date_sunrise() 함수 완벽 가이드 – 일출 시간 구하기

PHP의 date_sunrise() 함수는 지정된 날짜와 위치에 대한 일출 시간을 반환하는 함수입니다. 성공적으로 실행되면 요청한 형식으로 일출 시간을 반환하고, 실패하면 FALSE를 반환합니다.

문법 (Syntax)

date_sunrise(timestamp, format, latitude, longitude, zenith, gmtoffset);

매개변수 (Parameters)

  • timestamp − 일출 시간을 계산할 날짜의 타임스탬프입니다.

  • format − 결과를 어떤 형식으로 반환할지 지정합니다:

    • SUNFUNCS_RET_STRING : 결과를 문자열(string)로 반환합니다.

    • SUNFUNCS_RET_DOUBLE : 결과를 실수(float)로 반환합니다.

    • SUNFUNCS_RET_TIMESTAMP : 결과를 정수형 타임스탬프(timestamp)로 반환합니다.

  • latitude − 위치의 위도를 지정합니다. 기본값은 북위(North)이며, 남위(South)를 지정하려면 음수 값을 전달해야 합니다.

  • longitude − 위치의 경도를 지정합니다. 기본값은 동경(East)이며, 서경(West)을 지정하려면 음수 값을 전달해야 합니다.

  • zenith − 기본값은 date.sunrise_zenith 설정값입니다. 일반적으로 일출 계산에 사용되는 태양 고도각(천정각)입니다.

  • gmtoffset − GMT와 현지 시간 간의 차이를 시간 단위로 지정합니다.

반환 값 (Return)

date_sunrise() 함수는 성공 시 지정된 형식으로 일출 시간을 반환하며, 실패 시 FALSE를 반환합니다.

예제 1

다음 예제는 현재 날짜의 일출 시간을 문자열 형태로 출력합니다.

<?php
    echo("Date: " . date("D M d Y") . "<br />");
    echo("Sunrise time: ");
    echo(date_sunrise(time(), SUNFUNCS_RET_STRING, 38.4, -9, 90, 1));
?>

출력 결과

Date: Wed Oct 10 2018
Sunrise time: 07:43

예제 2

특정 날짜와 위도·경도를 직접 지정하여 일출 시간을 구하는 예제입니다.

<?php
    $res = strtotime('2018-10-25');
    var_dump(date_sunrise($res, SUNFUNCS_RET_STRING, 69.245833, -53.537222));
?>

출력 결과

string(5) "11:28"

참고 사항

date_sunrise() 함수는 PHP 8.0부터 폐기(deprecated)되었으며, 대신 date_sun_info() 함수를 사용하는 것이 권장됩니다. 또한 이 함수는 극지방 등 특수한 위치에서 일출이 발생하지 않는 경우에도 FALSE를 반환할 수 있습니다.