Sitemap Rss
·您当前位置:网站首页 >> PHP学习 >> 阅读文章

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

来源:逍遥峡谷 发布时间:2010-10-13 浏览6条评论
内容简介

不需要数据库,仅仅用文本文档就可以实现。同样PHP也可以不用数据库,利用文本文档来实现网页访问计数功能。通过对比PHP和ASP,我们会发现,其实两者是有共通之处的,也就是说你精通任何一门语言再学另一门的话,就会轻车熟路、水到渠成。

相关关键词:PHP   计数器   访问计数  

本文链接:http://www.icoa.cn/a/377.html [复制网址]

上一篇文章介绍了用ASP语言通过FSO制作最简单的网页计数器,不需要数据库,仅仅用文本文档就可以实现。同样PHP也可以不用数据库,利用文本文档来实现网页访问计数功能。

通过对比PHP和ASP,我们会发现,其实两者是有共通之处的,也就是说你精通任何一门语言再学另一门的话,就会轻车熟路、水到渠成。比如ASP文档中是用<%%>来代表ASP代码,PHP里是用<?php ?>来存放PHP代码。

和ASP一样,我们实现计数的思路也是:通过PHP读取文本文档counter.txt里的数据,并+1保存到文本文档中。

新建counter.php文档,输入如下代码,跟ASP不同的是PHP里的单行注释是用//或者#,多行注释用/* */来实现:

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


测试地址:http://www.icoa.cn/demo/counter.php

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

<?php include("counter.php");?>


需要注意的是,PHP每句程序结束都有一个“;”,这个对于熟悉ASP的人来说容易忽略而造成程序错误。

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

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


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

<script src="counter.php" type="text/javascript"></script>
本文链接:http://www.icoa.cn/a/377.html
关键词: PHP   计数器   访问计数  
上一篇:#2002 – 服务器没有响应 (或者本地 MySQL 服务器的套接字没有正确配置)
已经是最后一篇文章了
相关文章
·几个简单的基本的sql语句并详解 2010-11-12 16:19:43
·PHP中如何去掉字符串首尾空格 2013-12-12 14:42:50
·php使用strlen()判断字符串长度 2013-12-12 14:17:47
·MySQL命令行导入导出数据库 2013-10-20 14:16:23
·PHP用substr函数截取字符串中的某部分 2012-12-27 16:27:23
·mysql新建用户与远程访问 zt 2010-10-18 11:43:21
·#2002 – 服务器没有响应 (或者本地 MySQL 服务器的套接字没有正 2010-10-15 11:01:35
·用PHP读写文本文档制作最简单的访问计数器 2010-10-13 09:33:22
文章评论
123<2015-12-24 11:00:25>评论说:
创建两个php动态网页,分别用于模拟网站登录页和首页,要求提交登录信息时通过会话变量把用户名传到首页,并在首页对该用户信息表示欢迎。
管理员回复: 这个很容易实现,就是一个表单提交的功能。登录页不一定是动态页面,普通html就可以,首页需要是PHP页面。

sasa<2014-09-29 09:44:05>评论说:
请问两个用户同时读取计数值count,再各自+1后fwrite到txt的话,总数岂不是只+1而实际应该+2? 怎么实现互斥呢?
管理员回复: 这个是最简单的代码,如果访问量非常大,用这个是不行的

开心果啤<2014-07-01 14:58:06>评论说:
我运行为什么每次加2呢?
管理员回复: 刷新了两次吗?

Kayan<2014-06-23 15:29:37>评论说:
很好很清晰

QQ:2856954449<2013-02-18 17:58:34>评论说:
我想请教一下您!
管理员回复: 想请教什么东西,直接留言即可

共有6条评论(点击查看)



5158

逍遥峡谷 逍遥乱弹 张立博 飓风团队 爱之路 酷品优选 宝贝派 张子涵


版权所有©逍遥峡谷 Copyright©Canyon of Airily 冀ICP备06033848号