首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Typecho之奇淫技巧~

Typecho之奇淫技巧~

作者头像
闻语博客
发布2021-01-22 10:39:32
4310
发布2021-01-22 10:39:32
举报
文章被收录于专栏:闻语博客闻语博客闻语博客

相关介绍

本篇文章,意为记录,记录一些Typecho中大家都可以用到的一些骚操作

目前所记录的功能有在线人数、访客总数、响应耗时,其余功能陆续添加中...

以下说明为本博客使用的handsome主题,其它主题自行调用

<hr>

在线人数

functions.php中,添加以下统计代码

//在线人数
function online_users() {
    $filename='online.txt'; //数据文件
    $cookiename='Nanlon_OnLineCount'; //Cookie名称
    $onlinetime=30; //在线有效时间
    $online=file($filename); 
    $nowtime=$_SERVER['REQUEST_TIME']; 
    $nowonline=array(); 
    foreach($online as $line){ 
        $row=explode('|',$line); 
    $sesstime=trim($row[1]); 
    if(($nowtime - $sesstime)<=$onlinetime){
        $nowonline[$row[0]]=$sesstime;
    } 
} 
if(isset($_COOKIE[$cookiename])){
    $uid=$_COOKIE[$cookiename]; 
}else{
    $vid=0;
    do{
        $vid++; 
        $uid='U'.$vid; 
    }while(array_key_exists($uid,$nowonline)); 
    setcookie($cookiename,$uid); 
} 
$nowonline[$uid]=$nowtime;
$total_online=count($nowonline); 
if($fp=@fopen($filename,'w')){ 
    if(flock($fp,LOCK_EX)){ 
        rewind($fp); 
        foreach($nowonline as $fuid=>$ftime){ 
            $fline=$fuid.'|'.$ftime."\n"; 
            @fputs($fp,$fline); 
        } 
        flock($fp,LOCK_UN); 
        fclose($fp); 
    } 
} 
echo "$total_online"; 
}

然后在component/sidebar.php文件插入以下调用代码

<li class="list-group-item"> <i class="glyphicon glyphicon-user text-muted text-muted"></i> <span class="badge pull-right"><?php echo online_users() ?></span><?php _me("在线人数") ?></li>

<hr>

访客总数

functions.php中,添加以下统计代码

//总访问量
function theAllViews()
{
    $db = Typecho_Db::get();
    $row = $db->fetchAll('SELECT SUM(VIEWS) FROM `typecho_contents`');
    echo number_format($row[0]['SUM(VIEWS)']);
}

然后在component/sidebar.php文件插入以下调用代码

<li class="list-group-item text-second"><span class="blog-info-icons"> <i data-feather="user"></i></span><span class="badge pull-right"><?php echo theAllViews();?></span><?php _me("访客总数") ?></li>

<hr>

响应耗时

functions.php中,添加以下统计代码

//响应耗时
function timer_start() {
    global $timestart;
    $mtime = explode( ' ', microtime()  );
    $timestart = $mtime[1] + $mtime[0];
    return true; 
}
timer_start();
function timer_stop( $display = 0, $precision = 3  ) {
    global $timestart, $timeend;
    $mtime = explode( ' ', microtime()  );
    $timeend = $mtime[1] + $mtime[0];
    $timetotal = number_format( $timeend - $timestart, $precision  );
    $r = $timetotal < 1 ? $timetotal * 1000 . " ms" : $timetotal . " s";
    if ( $display  ) {
        echo $r;
    }
    return $r;
}

然后在component/sidebar.php文件插入以下调用代码

<li class="list-group-item text-second"><span class="blog-info-icons"> <i data-feather="clock"></i></span> <span class="badge pull-right"><?php echo timer_stop();?></span><?php _me("响应耗时") ?></li>
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020 年 12 月,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 相关介绍
  • 在线人数
  • 访客总数
  • 响应耗时
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档