• 技术文章 >后端开发 >PHP问题

    php 怎么实现前端统计流量

    藏色散人藏色散人2021-12-17 09:45:37原创374

    php实现前端统计流量的方法:1、创建一个PHP示例文件;2、定义变量;3、读取数据;4、判断是否已过去一天;5、根据IsGone进行相应操作即可。

    本文操作环境:Windows7系统,PHP7.1版,Dell G3电脑。

    php 怎么实现前端统计流量?

    php流量统计功能的实现代码

    用php实现的流量统计功能代码,本代码仅供学习交流,其中必有不妥之处。

    流量统计功能

    显示效果:

    总访问量:399 
    今日流量:14 
    昨日流量:16
    -- 
    -- 表的结构 `mycounter` 
    -- 
    CREATE TABLE `mycounter` ( 
    `id` int(11) NOT NULL auto_increment, 
    `Counter` int(11) NOT NULL, 
    `CounterLastDay` int(10) default NULL, 
    `CounterToday` int(10) default NULL, 
    `RecordDate` date NOT NULL, 
    PRIMARY KEY (`id`) 
    ) ENGINE=InnoDB DEFAULT CHARSET=gbk AUTO_INCREMENT=2 ;

    函数过程如下:

    <?PHP 
    public function ShowMyCounter(){ 
    //定义变量 
    $IsGone = FALSE; 
    //读取数据 
    $querysql = "SELECT * FROM `mycounter` WHERE id = Ƈ' "; 
    $queryset = mysql_query($querysql); 
    $row = mysql_fetch_array($queryset); 
    //获得时间量 
    $DateNow = date('Y-m-d'); 
    $RecordDate = $row['RecordDate']; 
    $DateNow_explode = explode("-",$DateNow); 
    $RecordDate_explode = explode("-",$RecordDate); 
    //判断是否已过去一天 
    if( $DateNow_explode[0] > $RecordDate_explode[0]) $IsGone = TRUE; 
    else if( $DateNow_explode[0] == $RecordDate_explode[0] ){ 
    if( $DateNow_explode[1] > $RecordDate_explode[1] ) $IsGone = TRUE; 
    else if( $DateNow_explode[1] == $RecordDate_explode[1] ){ 
    if( $DateNow_explode[2] > $RecordDate_explode[2] ) $IsGone = TRUE; 
    }else BREAK; // www.jbxue.com
    }else BREAK; 
    //根据IsGone进行相应操作 
    IF($IsGone) { 
    $RecordDate = $DateNow; 
    $CounterToday = 0; 
    $CounterLastDay = $row['CounterToday']; 
    $upd_sql = "update mycounter set RecordDate = '$RecordDate',CounterToday = '$CounterToday',CounterLastDay = '$CounterLastDay' WHERE id = Ƈ' "; 
    mysql_query($upd_sql); 
    } 
    //再次获取数据 
    $querysql = "SELECT * FROM `mycounter` WHERE id = Ƈ' "; 
    $queryset = mysql_query($querysql); 
    $Counter = $row['Counter']; 
    $CounterToday = $row['CounterToday']; 
    $CounterLastDay = $row['CounterLastDay']; 
    if($row = mysql_fetch_array($queryset) ){ 
    if( $_COOKIE["user"] != "oldGuest" ){ 
    $Counter = ++$row['Counter']; 
    $CounterToday = ++$row['CounterToday']; 
    $upd_sql = "update mycounter set counter = '$Counter',CounterToday = '$CounterToday' WHERE id = Ƈ' "; 
    $myquery = mysql_query($upd_sql); 
    } 
    echo "总访问量:".$Counter; 
    echo " 
    "; 
    echo "今日流量:".$CounterToday; 
    echo " 
    "; 
    echo "昨日流量:".$CounterLastDay; 
    }else{//如果数据库为空时,相应的操作 
    } 
    } 
    ?>

    当然,需要在文件第一行开始写出如下代码:

    <?PHP 
    session_start(); 
    if( !isset($_COOKIE["user"]) ){ 
    setcookie("user","newGuest",time()+3600); 
    }else { 
    setcookie("user","oldGuest"); 
    } 
    ?>

    推荐学习:《PHP视频教程

    以上就是php 怎么实现前端统计流量的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php 统计流量
    上一篇:php.ini 怎么禁用方法 下一篇:winxp怎么搭建php环境
    VIP课程(WEB全栈开发)

    相关文章推荐

    • 【腾讯云】年中优惠,「专享618元」优惠券!• PHP高并发和大流量的解决方案• 为什么用了HTTPS,仍然被流量劫持?• 微信小程序如何开通流量主功能?(方法介绍)• 什么是定向流量• 流量一来,时间变慢,怪PHP-FPM进程数不够?
    1/1

    PHP中文网