PHP精确到毫秒秒杀倒计时实例详解

yipeiwu_com6年前PHP代码库

精确到毫秒秒杀倒计时PHP源码实例,前台js活动展示倒计时,后台计算倒计时时间。每0.1秒定时刷新活动倒计时时间。

PHP:

// 注意:php的时间是以秒算。js的时间以毫秒算 
// 设置时区 
date_default_timezone_set('PRC'); 
//配置每天的活动时间段 
$starttimestr = date('Y-m-d H:i:s', strtotime(date('Y-m-d'))); 
$endtimestr = date('Y-m-d H:i:s', strtotime(date('Y-m-d', strtotime('+1 day')))); 
$starttime = strtotime($starttimestr); 
$endtime = strtotime($endtimestr); 
$nowtime = time(); 
if ($nowtime < $starttime) { 
  exit("活动还没开始,活动时间是:{$starttimestr}至{$endtimestr}"); 
} 
if ($endtime >= $nowtime) { 
  $lefttime = $endtime - $nowtime; //实际剩下的时间(秒) 
} else { 
  $lefttime = 0; 
  exit("活动已经结束!"); 
}

js:

var runtimes = 0; 
function GetRTime() { 
  var lefttime = < ?php echo $lefttime; ? > * 1000 - runtimes * 1000; 
      if (lefttime >= 0) { 
    var nD = Math.floor(lefttime / (1000 * 60 * 60 * 24)) % 24; 
    var nH = Math.floor(lefttime / (1000 * 60 * 60)) % 24; 
    var nM = Math.floor(lefttime / (1000 * 60)) % 60; 
    var nS = Math.floor(lefttime / 1000) % 60; 
    document.getElementById("RemainD").innerHTML = nD; 
    document.getElementById("RemainH").innerHTML = nH; 
    document.getElementById("RemainM").innerHTML = nM; 
    document.getElementById("RemainS").innerHTML = nS; 
    if (lefttime == 5 * 60 * 1000) { 
      alert("还有最后五分钟!"); 
    } 
    runtimes++; 
    setTimeout("GetRTime()", 1000); 
  } else { 
    alert('活动结束了!'); 
    location.reload(); 
  } 
} 
var Num = 0; 
onload = function() { 
  Refresh(); 
  setInterval("Refresh();", 100); 
  GetRTime(); 
} 
function Refresh() { 
  if (Num < 10) { 
    document.getElementById("RemainL").innerHTML = Num; 
    Num = Num + 1; 
  } else { 
    Num = 0; 
  } 
}

以上所述是小编给大家介绍的PHP精确到毫秒秒杀倒计时实例详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【宜配屋www.yipeiwu.com】网站的支持!

相关文章

PHP开发中解决并发问题的几种实现方法分析

本文实例讲述了PHP开发中解决并发问题的几种实现方法。分享给大家供大家参考,具体如下: 对于商品抢购等并发场景下,可能会出现超卖的现象,这时就需要解决并发所带来的这些问题了 在PHP语言...

php基于双向循环队列实现历史记录的前进后退等功能

本文实例讲述了php基于双向循环队列实现历史记录的前进后退等功能。分享给大家供大家参考。具体如下: 为实现一个记录操作历史的功能 1. 和撤销,反撤销功能类似的一个功能。(实现操作的前进...

PHP垃圾回收机制引用计数器概念分析

如果你安装了xdebug,就可以用xdebug_debug_zval()显示“zval”的信息了。如下: 复制代码 代码如下:<?php$str = "jb51.net";xdeb...

PHP数组游标实现对数组的各种操作详解

本文实例分析了PHP数组游标实现对数组的各种操作。分享给大家供大家参考,具体如下: 如何不用foreach实现对数组实现循环? 答:我们只需要模拟foreach就行了,数组在执行...

php正则表达式获取内容所有链接

方法一: function get_all_url($code){ preg_match_all('/<as+href=["|']?([^>"' ]+)...