PHP에서 카운트다운 타이머 만들기
이 기사에서는 PHP에서 카운트다운 타이머를 만드는 몇 가지 방법을 소개합니다. PHP만 사용하여 정적 카운트다운 타이머를 만들 수 있습니다. 동적 카운트다운 타이머를 만들려면 JavaScript를 사용해야 합니다.
PHP에서 정적 카운트다운 타이머 만들기
PHP를 사용하여 정적 카운트다운 타이머를 만들 수 있습니다. 타이머는 페이지를 새로 고칠 때만 업데이트됩니다. 그렇지 않으면 타이머가 동일하게 유지됩니다. PHP는 서버에서 실행되며 서버에서 새로운 정보가 필요할 때 페이지를 새로 고쳐야 합니다. 카운트다운 타이머는 완벽하게 작동하지만 진행 상황을 볼 때마다 웹 페이지를 새로 고쳐야 합니다.
PHP 함수 time()
을 사용하여 현재 시간을 가져옵니다. 목표 날짜와 현재 시간의 차이를 찾아 일, 시, 분, 초 형식으로 지정할 수 있습니다. 남은 시간을 다른 단위로 변환하면서 floor()
함수를 사용할 것입니다. 함수는 결과를 가장 가까운 정수로 내림합니다. 결과적으로 새로 계산된 시간 단위가 정확합니다. time()
함수는 1970년 1월 1일 00:00:00 GMT 이후의 현재 시간을 초 단위로 제공합니다. EpochConverter를 사용하여 현재 날짜와 시간을 타임스탬프로 또는 그 반대로 변환할 수 있습니다.
예를 들어 대상 날짜를 선택하고 EpochConverter를 사용하여 날짜를 Epoch 타임스탬프로 변환합니다. 그런 다음 $waiting_day
변수를 만들고 여기에 타임스탬프를 할당합니다. 그런 다음 $waiting_day
와 현재 시간의 차이를 찾아 $time_left
변수에 결과를 저장합니다. 이제 $time_left
를 하루의 총 시간인 60*60*60
으로 나누어 총 일수를 계산합니다. 변환하는 동안 floor()
함수를 사용하십시오. $days
변수에 결과를 저장합니다. 다음으로 $time_left
변수를 업데이트하여 남은 시간을 초 단위로 찾습니다. 이를 위해 $time_left
를 60*60*60
으로 나누어 나머지를 구합니다. %
연산자를 사용하여 나머지를 찾습니다. 마찬가지로 나머지 시, 분, 초를 찾습니다. 시간을 찾으려면 $time_left
를 60*60
으로 나누고 분을 찾으려면 60
으로 나누십시오. 나머지 타임스탬프는 초 단위입니다. 마지막으로 일, 시, 분, 초가 저장된 모든 변수를 출력합니다.
따라서 PHP를 사용하여 정적 카운트다운 타이머를 만들었습니다.
예제 코드:
<?php
$waiting_day = 1637210196;
$time_left = $waiting_day - time();
$days = floor($time_left / (60*60*24));
$time_left %= (60 * 60 * 24);
$hours = floor($time_left / (60 * 60));
$time_left %= (60 * 60);
$min = floor($time_left / 60);
$time_left %= 60;
$sec = $time_left;
echo "Remaing time: $days days and $hours hours and $min min and $sec sec left";
?>
출력:
Remaing time: 17 days and 23 hours and 51 min and 26 sec left
TimeCircles.js
를 사용하여 PHP에서 동적 카운트다운 타이머 생성
PHP의 TimeCircles.js
라이브러리를 사용하여 동적 카운트다운 타이머를 만들 수 있습니다. 카운트다운 타이머는 웹페이지를 새로 고치지 않고 자체적으로 업데이트됩니다. TimeCircles는 카운트다운 타이머를 쉽게 만드는 데 도움이 되는 jQuery 플러그인입니다. CDN을 사용하여 스크립트에 TimeCircles.js
및 jQuery를 포함할 수 있습니다. 스크립트 태그는 다음과 같습니다.
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js" integrity="sha512-894YE6QWD5I59HgZOGReFYm4dnWc1Qt5NtvYSaNcOP+u1T9qYdvdihz0PPSiiqn/+/3e7Jo4EaG7TubfWGUrMQ==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/timecircles/1.5.3/TimeCircles.min.js" integrity="sha512-FofOhk0jW4BYQ6CFM9iJutqL2qLk6hjZ9YrS2/OnkqkD5V4HFnhTNIFSAhzP3x//AD5OzVMO8dayImv06fq0jA==" crossorigin="anonymous" referrerpolicy="no-referrer"></script>
예를 들어 data-date
속성으로 div
를 생성합니다. 속성 값으로 PHP를 작성합니다. echo
기능을 사용하여 대상 날짜 2019-02-12 07:25:14
를 표시합니다. 다음으로 div
의 id
를 cd_timer
로 설정합니다. 다음으로 script
태그를 열고 jQuery를 작성합니다. 함수를 작성하고 id cd_timer
를 선택하고 TimeCircles()
함수를 호출합니다.
localhost에서 웹 페이지를 실행하면 남은 일, 시간, 분, 초를 보여주는 카운트다운 타이머를 볼 수 있습니다. 이런 식으로 PHP에서 TimeCircle.js
를 사용하여 동적 카운트다운 타이머를 만들 수 있습니다.
예제 코드:
<div data-date="<?php echo '2019-02-12 07:25:14' ; ?>" id="cd_timer"></div>
<script>
$(function () {
$("#cd_timer").TimeCircles();
});
</script>
Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.
LinkedIn