<?php /** * 秒转时间,格式 年 月 日 时 分 秒 * * @author [email protected] * @param int $time * @return array|boolean */ // 设置时区 date_default_timezone_set('Asia/Shanghai'); function Sec2Time($time){ if(is_numeric($time)){ $value = array( "years" => 0, "days" => 0, "hours" => 0, "minutes" => 0, "seconds" => 0, ); if($time >= 31556926){ $value["years"] = floor($time/31556926); $time = ($time%31556926); } if($time >= 86400){ $value["days"] = floor($time/86400); $time = ($time%86400); } if($time >= 3600){ $value["hours"] = floor($time/3600); $time = ($time%3600); } if($time >= 60){ $value["minutes"] = floor($time/60); $time = ($time%60); } $value["seconds"] = floor($time); return (array) $value; }else{ return (bool) FALSE; } } // 本站创建的时间 $site_create_time = strtotime('2013-05-22 00:00:00'); $time = time() - $site_create_time; $uptime = Sec2Time($time); ?> 本站运行:<span style="color:red;"><?php echo $uptime['years']; ?>年<?php echo $uptime['days']; ?>天<?php echo $uptime['hours']; ?>小时<?php echo $uptime['minutes']; ?>分<?php echo $uptime['seconds']; ?>秒</span>
老早之前的描述了,自己看起来都费解,如果看不懂还是别尝试了。
二、JS 版本(可以动态计时)
<script> function secondToDate(second) { if (!second) { return 0; } var time = new Array(0, 0, 0, 0, 0); if (second >= 365 * 24 * 3600) { time[0] = parseInt(second / (365 * 24 * 3600)); second %= 365 * 24 * 3600; } if (second >= 24 * 3600) { time[1] = parseInt(second / (24 * 3600)); second %= 24 * 3600; } if (second >= 3600) { time[2] = parseInt(second / 3600); second %= 3600; } if (second >= 60) { time[3] = parseInt(second / 60); second %= 60; } if (second > 0) { time[4] = second; } return time; } </script> <script type="text/javascript" language="javascript"> function setTime() { // 博客创建时间秒数,时间格式中,月比较特殊,是从 0 开始的,所以想要显示 5 月,得写 4 才行,如下 var create_time = Math.round(new Date(Date.UTC(2013, 4, 22, 0, 0, 0)) .getTime() / 1000); // 当前时间秒数,增加时区的差异 var timestamp = Math.round((new Date().getTime() + 8 * 60 * 60 * 1000) / 1000); currentTime = secondToDate((timestamp - create_time)); currentTimeHtml = currentTime[0] + '年' + currentTime[1] + '天' + currentTime[2] + '时' + currentTime[3] + '分' + currentTime[4] + '秒'; document.getElementById("htmer_time").innerHTML = currentTimeHtml; } setInterval(setTime, 1000); </script> 网站运行:<span id="htmer_time" style="color: red;"></span>
使用方法:将 1~43 行内容放到网站的 footer 或 header 中,然后将 44 行代码插入统计代码当中或网站合适的位置即可,可在我的博客首页侧边栏最下面看到具体效果。
注:感谢忙碌的松鼠分享的代码。