前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >分享博客统计中的动态运行天数代码

分享博客统计中的动态运行天数代码

作者头像
张戈
发布2018-03-26 13:51:08
1.2K0
发布2018-03-26 13:51:08
举报
文章被收录于专栏:张戈的专栏张戈的专栏

快到博主恋爱纪念日了,本来是打算做一个恋爱时间统计功能来小小的罗曼蒂克一下,类似于 已相恋 **年 **天 **小时 **分 **秒,当我找到让时间差转成年月日时分秒的方法后,感觉用来做博客统计也是不错的!就来分享下,喜欢的博友可以往下看看:

一、先来个 php 版本的:

代码语言:javascript
复制
<?php
/**
 * 秒转时间,格式 年 月 日 时 分 秒
 * 
 * @author wangyupeng129@126.com
 * @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>

老早之前的描述了,自己看起来都费解,如果看不懂还是别尝试了,推荐使用翼帆远航博客分享的博客统计小工具版本:http://www.ipeld.net/archives/3394.html

二、JS 版本(可以动态计时)

分享博客统计中的动态运行天数代码
分享博客统计中的动态运行天数代码
代码语言:javascript
复制
<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 行代码插入统计代码当中或网站合适的位置即可,可在我的博客首页侧边栏最下面看到具体效果。

注:感谢忙碌的松鼠分享的代码。

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2014年04月25日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
网站建设
网站建设(Website Design Service,WDS),是帮助您快速搭建企业网站的服务。通过自助模板建站工具及专业设计服务,无需了解代码技术,即可自由拖拽模块,可视化完成网站管理。全功能管理后台操作方便,一次更新,数据多端同步,省时省心。使用网站建设服务,您无需维持技术和设计师团队,即可快速实现网站上线,达到企业数字化转型的目的。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com