PHP实现网站访问量计数器

作者:超级管理员 更新时间:2017-10-31 10:59:22 来源:未知 点击:15642
简单的网站访问量计数器实现,具体如下首先说明思路:1.用户向服务器发出访问请求2.服务器读取访问次数文件,+1,向客户端返回3.服务器保存新的浏览次数4.新用户访问,重复123即可解决方案(主要算法)

简单的网站访问量计数器实现,具体如下

首先说明思路

1.用户向服务器发出访问请求
2.服务器读取访问次数文件,+1,向客户端返回
3.服务器保存新的浏览次数
4.新用户访问,重复123即可

解决方案(主要算法):

1.数据文件:counter.dat
2.读出数据文件
    打开文件;
    如果不存在,创建,并以0为初识数据;
    否则,读出数据;
    关闭文件。
3.把累加后的数据写入文件counter.dat
    累加数据;
    打开文件;
    写入数据;
    关闭文件;
4.向网页输出信息;
建立Count_Visitor文件夹。

在Count_Visitor文件夹中,创建Count_Visitor.php文件,并键入以下代码:

<html>
<head>
 <meta charset="UTF-8">
 <title>浏览计数器-ljccccccccccc@163.com</title>
</head>
<body>
 <?php
  //数字输出网页计数器
  $max_len = 9;
  $CounterFile = "counter.dat";
  if(!file_exists($CounterFile)){  //如果计数器文件不存在
   $counter = 0;     
   $cf = fopen($CounterFile,"w"); //打开文件
   fputs($cf,'0');     //初始化计数器
   fclose($cf);     //关闭文件
  }
  else{          //取回当前计数器的值
   $cf = fopen($CounterFile,"r");
   $counter = trim(fgets($cf,$max_len));
   fclose($cf);
  }
  $counter++;         //计数器加一
  $cf = fopen($CounterFile,"w");    //写入新的数据
  fputs($cf,$counter);
  fclose($cf);
 ?>
 <div id="dd" align="center">
  <span>欢迎您!</span>
  <span>您是本站的第
   <?php
    echo $counter;       //输出计数器
   ?>
  位访客!</span>
 </div>

</body>
</html>

如果有需要可以自己键入css文件装饰.

代码中包含的变量及其含义

$max_len : 自定义变量。计数器的最大位数;

$CounterFile : 自定义变量。计数器存放的文件(路径和文件名);

$counter : 自定义变量。计数器的值;

$cf : 自定义变量。打开计数文件的句柄;

代码中包含的函数与含义

file_exists($CounterFile) : 判断文件是否存在;

fopen($CounterFile,”w”) : 以写入方式打开文件。(函数自带属性,如果不存在则创建)

fopen($CounterFile,'r') : 以只读方式代开文件。

fgets($cf,$max_len) : 从文件中读出指定长度的字符

fputs($cf,”0”) : 把字符“0”写入$cf

fclose($cf) : 关闭$cf打开的文件

trim(fgets($cf,$max_len)) : 去除 取出字符串的 两边的空格符

今天的笔记就到这啦!

很简单的php小应用。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

推荐阅读

热门内容

微信公众号网页的服务器端php代码不能正

微信公众号网页的服务器端php代码不能正...

PHP好讨厌的弱类型:在为空(null,

本帖最后由szuzsq于2017-08-...

请输入正确的email,表达式是否有错?

这个是mvmmall\templates...

在 Laravel 中 “规范” 的开发

Laravel简介Laravel是一套简...

phpStudy配置多站点多域名方法及遇

此文不太适合一点不懂多站点多域名的。适合...

phpstudy的php版本自由修改的方

网上有着许多的网站集成搭建软件,比较出名...

PHP 对redis订阅的问题

有这么一个需求,客户下单,下单后把订单发...

我这里有三个分类,每个分类上面有相对应的

我这里有三个分类,每个分类上面有相对应的...

求解!!PHP+MYSQL一个复杂的递归

这是我的数据表,想实现的功能如下clas...

curl 请求301 Moved Per

[size=18px]phpcms项目 ...

最新内容

让 Python 更加充分的使用 Sqlite3

  我最近在涉及大量数据处理的项目中频繁使用sqlite3。我最初的尝试根本不涉...

PHP实现网站访问量计数器

简单的网站访问量计数器实现,具体如下首先说明思路:1.用户向服务器发出访问请求2...

2017年中国程序员调查分析:大数据就业前景广阔

  在互联网行业,程序员一直是很受关注的人群。特别对准备步入社会的大学生们来说,...

美国人看待科技巨头:苹果、FB和Twitter最不受信任

  新浪科技讯北京时间10月30日早间消息,自从史蒂夫·乔布斯(SteveJob...

网易:将按照广电总局意见 对“大逃杀”类游戏整改

  “大逃杀”类游戏的火爆,引起了相关部门的注意。  10月27日,中国音数协游...

从四大公司财报看行业走向:云计算业务真的很热

  网易科技讯消息,据路透社报道,亚马逊、微软、Alphabet子公司谷歌以及英...

物联网的应用会让黑客掌控一切吗?

  由于了解一些技术,密码和安全性,行业专家认为其电子设备在防御黑客方面是非常安...

结构体总的字节数的理解

大家好,在自学结构体这一节时,书上有这样一个例子:    struct Stud...

Burp手机抓包使用过程

  写作背景:在上一篇文档中介绍了如何配置手机抓包的全过程,其中有网友留言问配置...

C#基础问题:只读,关于Array.IsReadOnly和IList.IsReadOnly

不清楚为什么问题列表看不到我的问题,无奈再开一贴原题贴以下是关于本问题的解决方案...

md5加密,要加密的串带有特殊字符

现在在做跨境物流,需要接法国物流接口。接口需要传个安全秘钥,这个秘钥就是规定的几...

backgroundWorker关于Winform最简单的线程问题,请求各位指导一下

我想使用backgroundWorker1,启动应用后每隔20秒去读取数据库,看...

一个小问题求助

类似图中数据,要筛选出MesNum与InventoryNum不同的数据该怎么写 ...

WPF 自定义的DependencyProperty属性不被识别

定义了一个多选的Comobox,自定义依赖属性在调用时不被识别,不知道为什么。p...

ArcGis For JavaSrcipt 如何加载shp和dwg和dbf文件?

如何加载?跪求大神指导。并且可以清除掉!!以下是关于本问题的解决方案:...

一条sql语句,把重复记录的字段的值相加

本帖最后由NewCSDN2005于2017-10-2915:35:27编辑acc...

链接带的有?id=xxx,查询结果一直显示id为xxx的咋办?

一个链接,比如www.baidu.com链接要点进去直接显示某个人,而不是所有就...

通过数据库获取 like '%[螺丝]%' 怎么写代码!

通过数据库获取 like '%[螺丝]%' 怎么写代码SELECT top 5 ...

winform客户端界面与其他软件相似,需要修改界面

项目开始的时候,领导一句话照着XXX软件实现这些功能,项目全程就我一个人开发,然...

Dev GridControl 单元格为空验证弹框问题!!! 希望有人能解决了

怎么阻止对话框弹出,并且在有空值得情况下不允许添加新行以下是关于本问题的解决方案...