Dưới đây là cách thực hiện. Working Demo.
Thứ nhất, ở phía trên cùng của tài liệu HTML của bạn:
.datetime {
color: #C11B17;
font-family:arial;
font-size: 16px;
}
Chúng tôi làm điều này vì vậy chúng tôi có thể dọn dẹp mã HTML của chúng tôi một chút:
$rdate1 = 1240550032; // Fri, 24 Apr 2009 05:13:52 GMT
$expiredate = date('d m Y G:i:s', $rdate1);
$time = $rdate1 - time();
$days = floor($time/86400);
$hours = floor(($time-($days*86400))/3600);
$mins = floor(($time-($days*86400)-($hours*3600))/60);
$secs = floor($time-($days*86400)-($hours*3600)-($mins*60));
printf("
Your account is going to expire in
<span class='datetime' id='days'>%s</span> Days
<span class='datetime' id='hours'>%s</span> Hours
<span class='datetime' id='minutes'>%s</span> Minutes
<span class='datetime' id='seconds'>%s</span> Seconds
", $days, $hours, $mins, $secs);
Tôi không hoàn toàn chắc chắn nơi bước trung gian mà bạn đang thực hiện đến từ đó, nhưng đoạn mã trên cho tôi sự khác biệt về thời gian giữa $rdate1
(có lẽ là dấu thời gian unix) và time()
.
Cuối cùng, chúng ta có thể làm điều gì đó như thế này với Javascript để cập nhật thời gian khi tải trang:
addEvent(window, 'load', function() {
var eDays = document.getElementById('days');
var eHours = document.getElementById('hours');
var eMinutes = document.getElementById('minutes');
var eSeconds = document.getElementById('seconds');
var timer;
timer = setInterval(function() {
var vDays = parseInt(eDays.innerHTML, 10);
var vHours = parseInt(eHours.innerHTML, 10);
var vMinutes = parseInt(eMinutes.innerHTML, 10);
var vSeconds = parseInt(eSeconds.innerHTML, 10);
vSeconds--;
if(vSeconds < 0) {
vSeconds = 59;
vMinutes--;
if(vMinutes < 0) {
vMinutes = 59;
vHours--;
if(vHours < 0) {
vHours = 23;
vDays--;
}
}
} else {
if(vSeconds == 0 &&
vMinutes == 0 &&
vHours == 0 &&
vDays == 0) {
clearInterval(timer);
}
}
eSeconds.innerHTML = vSeconds;
eMinutes.innerHTML = vMinutes;
eHours.innerHTML = vHours;
eDays.innerHTML = vDays;
}, 1000);
});
function addEvent(obj, type, fn) {
if (obj.attachEvent) {
obj['e'+type+fn] = fn;
obj[type+fn] = function(){obj['e'+type+fn](window.event);}
obj.attachEvent('on'+type, obj[type+fn]);
} else
obj.addEventListener(type, fn, false);
}
Nguồn
2009-04-18 07:37:16
Về PHP, bạn có thể muốn xem http://php.net/strftime – whichdan