用PHP读写文本文档制作最简单的访问计数器

通过PHP实现不用数据库,利用文本文档来制作一个网页访问计数器

新建counter.php文档,输入如下代码:

  1. <?php
  2. function get_hit($counter_file)
  3. //定义函数,内容用{}括起来,学过编程的人应该看出来了,跟C语言有点相似
  4. {
  5. $count=0;
  6. //将计数器归零,Php里的变量前面加上$号
  7. if(file_exists($counter_file))
  8. //如果计数器文件存在,读取其中的内容
  9. {
  10. $fp=fopen($counter_file,"r");
  11. //r是read的缩写,代表读取的意思,以只读方式打开文件
  12. $count=0+fgets($fp,20);
  13. /*读取前20位数赋值给count变量,由于fgets()函数读取的是字符串,所以需要在前面+0来转换为整数,
  14. 这一点跟ASP就不同了,ASP中字符串可以直接跟整型进行运算,而不用转换。*/
  15. fclose($fp);
  16. //关闭文件
  17. }
  18. $count++;
  19. //增加计数,这一点跟C就非常相似了
  20. $fp=fopen($counter_file,"w");
  21. //w是write的缩写,代表写入的意思,以写入的方式打开文件
  22. fputs($fp,$count);
  23. //输出计数值到文件
  24. fclose($fp);
  25. return($count);
  26. //返回计数值
  27. }
  28. ?>
  29. <?php
  30. $hit=get_hit("counter.txt");
  31. //调用刚才定义的函数处理counter.txt文档,并把结果赋值给hit变量。
  32. echo "您是第<b>"."$hit"."</b>位访客!";
  33. //输出结果。PHP与ASP的区别在于:ASP的连字符是“&”,而Php的连字符是“.”。
  34. ?>

同样在需要调用的PHP文档中插入这个文件:

  1. <?php include(“counter.php”);?>

也可以通过script脚本的方式来在html文档中调用这个计数器,需要将counter.php后面调用函数的代码修改一下:

  1. <?php
  2. $hit=get_hit("counter.txt");
  3. echo "document.write (\"<center>您是第<b>"."$hit"."</b>位访客!</center>\");";
  4. ?>

然后在需要使用网页中插入如下代码:

  1. <script src="counter.php" type="text/javascript"></script>

(本文整理自 http://www.icoa.cn/a/377.html)

本文作者为mengkun,转载请注明。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏数值分析与有限元编程

Debug模式 和 Release模式

很多编译器允许两种编译链接方式:Debug模式 和 Release模式。这两种链接方式的区别主要是: Debug 模式:程序几乎不进行优化。产生的可执行程序具有...

2766
来自专栏林德熙的博客

win10 UWP 单元测试 WPF 单元测试异步测试

单元测试和重构都是在做完一个小小函数一般就要进行一次,越早做就越好,可以比较早发现问题,这时我们还记得我们写的内容,不过比重构好的是,重构我们经常不知道要叫什么...

672
来自专栏Hongten

lucene(全文搜索)_luceneweb例子

http://apache.dataguru.cn/lucene/java/2.9.4/

842
来自专栏我有一个梦想

Qt界面UI之QML初见(学习笔记四)

一 概述 QML是一种专门用于构建用户界面的编程语言,它允许用户构建高性能,具有流畅特效的可视化应用程序,QML是可读的,声明式的文档,具有类似JSON的语法,...

2397
来自专栏地方网络工作室的专栏

Python3 初学实践案例(2)将源目录中的图片用MD5命名并可以设定目标目录

Python3 初学实践案例(2)将源目录中的图片用MD5重命名后移动或复制到目标文件夹 尝试了一下用 python 实现了一个生成密码的程序。感觉还是比较好上...

19310
来自专栏web前端

SASS学习笔记(一)

一、为什么使用SASS CSS不是编程语言,没有变量、条件语句等等,只是单纯的描述,因此为CSS加入编程元素(即“CSS预处理器”)。其基本思想:用一种专门的编...

1888
来自专栏difcareer的技术笔记

Android Inline Hook 详解前言原理分析

网上有几篇关于Android inline hook的文章,这篇尤其不错,还有对应的示例代码。为了方便调试看结果,我将其改为gradle工程,代码见这里。你需要...

822
来自专栏Android自学

【转】jQuery验证控件jquery.validate.js使用说明+中文API

1484
来自专栏流柯技术学院

loadrunner11中java vuser引用jar包

3、将新生成的jar包HelloWorld.jar放到一个指定的目录下,如D:\LoadRunner\jar。

891
来自专栏柠檬先生

sass 基础——回顾

1.webstorm 自动编译SASS   下载安装包 http://rubyinstaller.org/downloads/   然后点击安装,路径为默认路...

2007

扫码关注云+社区