最简单的PHP程序--记数器

所属分类: 网络编程 / PHP编程 阅读数: 1938
收藏 0 赞 0 分享
原理:  
1.第一位使用者浏览某页。
2.伺服器程式从资料库或档案中读取该页被浏览次数。
3.将次数加一储存,并将它送回第一位使用者。
4.第二位使用者浏览某页。
5.伺服器程式从资料库或档案中读取该页被浏览次数。
6.将次数再加一储存,并将它送回第二位使用者。   
需要了解的函数:  
fopen()打开文件
filesize()获得文件大小
fseek()移动文件指针
fgets()得到文件指针所在行内容
fputs()将字串写如文件指针所在位置
fclose()关闭文件
file_exists()判断文件是否存在
exec()执行外部程序  

最简单的记数器:  
<html>  
<head>  
<title>访客计数器 原型</title>  
</head>  
<body>  
<?php  
/*  
(c)1998 David W. Bettis  
这里是版权信息  
*/  

$counterFile = "counter.txt";  
#这里是定义记数器文件

function displayCounter($counterFile) {  
$fp = fopen($counterFile,"rw");
#打开文件,用读写方式

$num = fgets($fp,5);
#取得当前数字

$num += 1;
#加1

print "您是第 "."$num"." 位无聊份子";  
exec( "rm -rf $counterFile");  
exec( "echo $num > $counterFile");  
#偷懒的方式哦,不使用fputs写入  
}  

if (!file_exists($counterFile)) {  
exec( "echo 0 > $counterFile");  
}#如果记数器文件不存在,新建它并设置内容为0

displayCounter($counterFile);  

?>  
</body>  
</html>   
PHP记数器比较简单版:  
<?
#版权没有啦,这么简单  

$fp=fopen("counter.txt","r+");
flock($fp,3);  
#打开记数器文件并锁住

$fsize=filesize("count.txt");
$count=fgets($fp,$fsize+1);
$count++;  
#取得数码并加一

fseek($fp,0);
fputs($fp,$count);
fclose($fp);
#将新数码写入文件

echo "你是第 $count 位访问者";
?>  

PHP记数器图形版:  
制作10个图片,将数字串用图片组起来,我就不细说了
假设图片为0.gif ~ 9.gif

<?
....$count为取得的数值
$strcount=strval($count);
$strcount=chop($strcount);
$countlen=$strlen($strcount);
$shtml="";
for ($i=0; $i<$countlen; $i++) {
$shtml.="<img src='";
$shtml.=$strcount[$i];
$shtml.=".gif'>";
}
echo $shtml;
?>  

PHP记数器数据库版:  
使用SQL记数器,先建好表
CREATE TABLE counter
(
counter int not null,
id int not null
)
INSERT INTO counter(counter,id) VALUE(0,1)

<?
$conn=mysql_connect(..., ..., ...);
#MySQL数据库连接

$sql="select * from counter";
$result=mysql_query($sql,$conn);
$objresult=mysql_fetch_object($result);
$count=$objresult->counter;
$count++;  

$sql="update counter set counter=".$count."where id=1";
mysql_query($sql,$conn);
mysql_close($conn);


echo "你是第$count位访客";
?> 
更多精彩内容其他人还在看

TP5(thinkPHP5)框架基于ajax与后台数据交互操作简单示例

这篇文章主要介绍了TP5(thinkPHP5)框架基于ajax与后台数据交互操作,结合实例形式分析了thinkPHP5前端基于jQuery的ajax数据提交及后台数据接收、处理相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP利用Mysql锁解决高并发的方法

这篇文章主要介绍了PHP利用Mysql锁解决高并发的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

php 后端实现JWT认证方法示例

这篇文章主要介绍了php 后端实现JWT认证方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

ThinkPHP框架实现定时执行任务的两种方法分析

这篇文章主要介绍了ThinkPHP框架实现定时执行任务的两种方法,结合实例形式分析了2种被动执行定时任务的相关操作技巧与注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP命名空间与自动加载类详解

这篇文章主要介绍了PHP命名空间与自动加载类,结合实例形式详细分析了php自动加载类与命名空间原理、使用方法及相关操作注意事项,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP时间处理类操作示例

这篇文章主要介绍了PHP时间处理类,结合实例形式分析了DateTime、DateTimeZone、DateInterval及DatePeriod等常用日期时间处理类简单操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

利用PHP扩展Xhprof分析项目性能实践教程

XHProf是Facebook开发的性能调试工具,能帮助直观的统计显示PHP程序执行中各方法函数调用次数和消耗时间,以方便我们排查性能瓶颈并进行调优。下面这篇文章主要给大家介绍了关于利用PHP扩展Xhprof分析项目性能实践的相关资料,需要的朋友可以参考下
收藏 0 赞 0 分享

Django 标签筛选的实现代码(一对多、多对多)

这篇文章主要介绍了Django 标签筛选的实现代码(一对多、多对多),本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用pdo实现事务处理操作示例

这篇文章主要介绍了PHP使用pdo实现事务处理操作,结合实例形式较为详细的分析了php基于pdo实现事务处理的相关原理与操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

thinkPHP框架实现类似java过滤器的简单方法示例

这篇文章主要介绍了thinkPHP框架实现类似java过滤器的简单方法,结合实例形式分析了thinkPHP基于继承实现的登录验证功能相关操作方法,需要的朋友可以参考下
收藏 0 赞 0 分享
查看更多