利用PHP实现倒计时

      文章,程序设计,网页开发   2 条评论

闲着无聊死了....守望屁股打了一晚上了
马上要高考了...没事弄个倒计时玩玩

设定时区
中国是GMT-8(其实时区这个东西吧...我有个关于某个不会数三的胖子的悲伤的故事)

date_default_timezone_set('Etc/GMT-8');

取服务器时间
PHP自带了time函数来取服务器时间戳

$TimeNow = time();

然后与高考日期(06-07和06-08)比较
比较的时候需要用strtotime函数将文本型的日期转换为时间戳方便比较
首先需要判断是否高考已经结束
这里用了date来格式化日期,其中Y-m-d代表年-月-日

strtotime(date('Y-m-d', $TimeNow))

细节讲完了,大致思路如下:

设定一坨变量
判断当前时间和高考结束日期
结束了->输出 未结束->判断是否正在进行高考
判断是否进行高考
是->输出 否->输出

例行的源码如下

<?php
    date_default_timezone_set('Etc/GMT-8');
    $StartDate = '2017-06-07';
    $EndDate = '2017-06-08';
    $TimeNow = time();
    $LeftTime = strtotime($StartDate) - $TimeNow;
    if($LeftTime <= 0){
        //因为之前取得是差值 所以这里是负数 用abs函数取绝对值 并且加回减掉的那一天
        $LeftTime = abs($LeftTime) + 86400;
        $string = "高考进行中 %d 天";
    }else{
        $string = "距高考还有 %d 天";
    }
    if(strtotime($EndDate) < strtotime(date('Y-m-d', $TimeNow))){
        $string = "滑鸡 高考结束惹";
    }                                   
    //intval将文本型的时间戳转换为整数型并运算获得天数       
    printf($string,intval($LeftTime / 86400));
?>

PS:再插一句 我以后打死也不用typecho的代码格式写一大段了......排版反人类





  1. 1
  2. 2
  3. 3
  4. 4
  5. 5