PHP의 date_sunset 함수는 특정 날짜 및 위치의 일몰 시간을 얻는 데 사용됩니다. 주어진 위도, 경도 및 날짜에 따라 일몰 시간을 계산합니다. 일반적 으로이 함수는 1970 년 1 월 1 일부터 지정된 시간에 이르는 UNIX 타임 스탬프를 반환합니다.
date_sunset 함수의 기본 구문은 다음과 같습니다.
<span><span><span class="hljs-title function_ invoke__">date_sunset</span></span><span>(time, format, latitude, longitude, zenith, gmt_offset);
</span></span>
시간 : 선택 사항, 타임 스탬프, 현재 시간의 기본값.
형식 : 결과 형식. sunfuncs_ret_timestamp (unix timestamp, default), sunfuncs_ret_string ( '6:00 pm'과 같은 문자열 형식 시간을 반환), sunfuncs_ret_double (선셋 각도로 반환) 일 수 있습니다.
위도 와 경도 : 각각 일몰 위치의 위도와 경도가 제공되어야합니다.
Zenith : 선택 사항, 태양의 정열 각도는 일반적으로 90.5도이며 일몰시 태양의 각도를 나타냅니다.
gmt_offset : 선택 사항, 시간대 오프셋, 기본값은 0입니다.
sunfuncs_ret_timestamp (기본값)
형식 매개 변수가 sunfuncs_ret_timestamp (또는 전달되지 않음)로 설정된 경우, 함수는 1970 년 1 월 1 일 자정부터 일몰까지 Unix 타임 스탬프를 반환합니다.
예:
<span><span><span class="hljs-variable">$sunset</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date_sunset</span></span><span>(</span><span><span class="hljs-title function_ invoke__">time</span></span><span>(), SUNFUNCS_RET_TIMESTAMP, </span><span><span class="hljs-number">40.7128</span></span><span>, -</span><span><span class="hljs-number">74.0060</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$sunset</span></span><span>;
</span></span>
반환 결과는 UNIX 타임 스탬프를 나타내는 숫자가됩니다.
sunfuncs_ret_string
형식 매개 변수가 sunfuncs_ret_string 으로 설정되면 형식화 된 시간 문자열이 반환됩니다. 일반적으로 12 시간 시간 표현 (예 : '6:00 pm').
예:
<span><span><span class="hljs-variable">$sunset</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date_sunset</span></span><span>(</span><span><span class="hljs-title function_ invoke__">time</span></span><span>(), SUNFUNCS_RET_STRING, </span><span><span class="hljs-number">40.7128</span></span><span>, -</span><span><span class="hljs-number">74.0060</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$sunset</span></span><span>;
</span></span>
출력은 오후 6시 30 분과 유사 할 수 있으며 뉴욕시의 일몰 시간을 나타냅니다.
sunfuncs_ret_double
형식 매개 변수가 sunfuncs_ret_double 로 설정된 경우, 태양의 높이 각도를 나타내는 부동 소수점 값이 반환됩니다. 반환 값은 일반적으로 음수이므로 태양이 수평선 아래에 있고 값의 절대 값이 클수록 태양이 낮다는 것을 나타냅니다.
예:
<span><span><span class="hljs-variable">$sunset</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date_sunset</span></span><span>(</span><span><span class="hljs-title function_ invoke__">time</span></span><span>(), SUNFUNCS_RET_DOUBLE, </span><span><span class="hljs-number">40.7128</span></span><span>, -</span><span><span class="hljs-number">74.0060</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-variable">$sunset</span></span><span>;
</span></span>
반환 값은 -0.934 와 같은 부동 소수점 일 수 있으며, 이는 수평선 아래의 태양의 각도를 나타냅니다.
date_sunset 에 의해 반환 된 결과는 다른 형식의 데이터 일 수 있으므로 올바른 구문 분석 방법은 사용중인 형식 매개 변수에 따라 다릅니다.
Sunfuncs_ret_timestamp를 사용하는 경우, 즉 결과가 Unix 타임 스탬프 인 경우 날짜 함수를 통해 읽을 수있는 날짜 및 시간 형식으로 변환 할 수 있습니다.
예:
<span><span><span class="hljs-variable">$sunset_timestamp</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date_sunset</span></span><span>(</span><span><span class="hljs-title function_ invoke__">time</span></span><span>(), SUNFUNCS_RET_TIMESTAMP, </span><span><span class="hljs-number">40.7128</span></span><span>, -</span><span><span class="hljs-number">74.0060</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-title function_ invoke__">date</span></span><span>(</span><span><span class="hljs-string">"Y-m-d H:i:s"</span></span><span>, </span><span><span class="hljs-variable">$sunset_timestamp</span></span><span>);
</span></span>
이것은 2025-06-16 19:45:00 과 같은 표준 DateTime 형식을 출력합니다.
sunfuncs_ret_string을 사용하는 경우 직접 출력하거나 더 처리 할 수있는 형식의 시간 문자열을 반환합니다.
예:
<span><span><span class="hljs-variable">$sunset_string</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date_sunset</span></span><span>(</span><span><span class="hljs-title function_ invoke__">time</span></span><span>(), SUNFUNCS_RET_STRING, </span><span><span class="hljs-number">40.7128</span></span><span>, -</span><span><span class="hljs-number">74.0060</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"The sunset time is: "</span></span><span> . </span><span><span class="hljs-variable">$sunset_string</span></span><span>;
</span></span>
이것은 일몰 시간과 유사한 결과를 출력합니다 : 오후 6:30 .
Sunfuncs_ret_double을 사용하는 경우 반환 된 플로팅 값으로 태양의 높이 각도를 판단 할 수 있습니다. 이 값은 일반적으로 음수이므로 태양이 설정되었음을 의미합니다.
예:
<span><span><span class="hljs-variable">$sunset_angle</span></span><span> = </span><span><span class="hljs-title function_ invoke__">date_sunset</span></span><span>(</span><span><span class="hljs-title function_ invoke__">time</span></span><span>(), SUNFUNCS_RET_DOUBLE, </span><span><span class="hljs-number">40.7128</span></span><span>, -</span><span><span class="hljs-number">74.0060</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Sunset angle: "</span></span><span> . </span><span><span class="hljs-variable">$sunset_angle</span></span><span>;
</span></span>
반환 값은 -0.934 와 같은 소수점이므로 태양의 각도를 나타냅니다.
date_sunset 함수는 특히 특정 위치의 위도와 경도를 기준으로 일몰 시간을 가져와야 할 때 매우 유용합니다. 반환하는 데이터 형식은 형식 매개 변수의 값에 따라 다르며, 이는 UNIX 타임 스탬프, 형식의 시간 문자열 또는 태양의 고도 각도 일 수 있습니다. 리턴 값을 올바르게 구문 분석하려면 선택한 형식에 따라 적절한 기능을 사용하여 변환하거나 표시해야합니다.
이러한 기본 사용법을 마스터함으로써 일몰 알림, 일기 예보 또는 천문 계산 등 PHP에서 일몰 시간 데이터를보다 편리하게 처리하여 효과적인 도움을 줄 수 있습니다.