个人博客运行时间统计代码
2017-06-02HTML
thinkphp做统计时间的思路就是从你开始建站的时间戳到现在的时间戳的差,然后除以1年内多少秒就得到运行的年,月、天以此例推。但话又说回来这还是有点偏差,因为一年有闰年和闰月之说,所有多一天和少一天的时间戳是有误差的,这点大家要明白。知道原理了,下面来看看代码吧!
做统计时间的思路就是从你开始建站的时间戳到现在的时间戳的差,然后除以1年内多少秒就得到运行的年,月、天以此例推。但话又说回来这还是有点偏差,因为一年有闰年和闰月之说,所有多一天和少一天的时间戳是有误差的,这点大家要明白。知道原理了,下面来看看代码吧
PHP版
<?php
/**
* 秒转时间,格式 年 月 日 时 分 秒
*/
// 设置时区
date_default_timezone_set('Asia/Shanghai');
function getalltime($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('2012-06-02 00:00:00');
$time = time() - $site_create_time;
$uptime= getalltime($time);
?>
运行时间:
年
天
小时
分
秒
JS版
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; }" _ue_custom_node_="true">
很赞哦! ()