想法相似。 图形化后输出。 每一个数字一张图像。
程序代码分为四个部分:
1 .主文件count.php
2 .计数器读写count.inc
3.count.dat计数文件
4 .图片目录img
------------- -请参阅
//counter.php
?
require(counter.Inc ) )。
?
html
头戴
title我的计数器/title
/head
实体
p欢迎来到我的网站/p
你是本站最好的吗? PHP计数器(; 我是访问者! br
/body
/html
------------- -请参阅
//counter.inc
?
function counter (
{
//设定计数器的最大位数
$max_len=8;
//设定记录访问次数的文件
$CounterFile='counter.dat ';
if (! 如果file_exists($counterfile ) ) counter.dat不存在
{
//定义计数器初始值
$Counter=0;
//通过写入打开计数器
$cf=fopen($counterfile,' w ' );
//锁定
flock($cf,3 );
//将数字0写入文件counter.dat
fputs($cf,'0';
//关闭文件流指针
fclose($cf;
}
如果存在else//counter.dat
{
以只读方式打开counter.dat
$cf=fopen($counterfile,' r ' );
flock($cf,3 );
从counter.dat读取访问次数,并将该位数截断为8位
$counter=trim(fgets($cf,$max_len );
//关闭文件流指针
fclose($cf;
}
更新session时
防刷屏机构
session_is_registed('in ' )
=true用户在同一会话期间,计数器不更新
=false用户不在同一会话期间。 计数器1
*/
if(session_is_registered(in )==false ) ) )
{
//计数器加1
$Counter;
//通过写入打开文件
$cf=fopen($counterfile,' w ' );
flock($cf,3 );
//将计数器写入文件
fputs($cf,$Counter;
fclose($cf;
}
//计算访问量的位数
$counter_len=strlen($counter );
//输出的访问量为8位,不足8位,前面添加0
for($I=1; $i=($max_len-$Counter_len; $i )
{
echo 'img src='img/0.gif ';
}
for($I=1; $i=$Counter_len; $i )
{
//输出实际访问次数
echo ' img src=' img/'.substr ($ counter,$ I-1,1 ).'.gif );
}
}
?