简单PHP图像计数器实现

转自ChinaLab PHP教程中的程序!

 

图像计数器

所需文件:

exa3-5.php // 主调用文件
exa3-5.inc // 计数函数
exa3-5.dat // 数据记录文件
img/  // 记数图像文件夹,内有文件0.gif ~ 9.gif 

 

详细代码如下:

exa3-5.php

<? php
    
require ( " exa3-5.inc " );
?>
< html >
    
< head >< title > 我的计数器 </ title ></ head >
    
< body >
        
< p > 欢迎进入我的网站 </ p >
        您是本站第
<? php counter();  ?> 位访客 !< br >
    
</ body >
</ html >

 

exa3-5.inc 

 

<? php
    
function  counter(){
        
$max_len   =   8 ;
        
$CounterFile   =   " exa3-5.dat " ;

        
if ( ! file_exists ( $CounterFile )){
            
$Counter   =   0 ;
            
$cf   =   fopen ( $CounterFile ,   " w " );
            
flock ( $cf ,   3 );
            
fputs ( $cf ,   " 0 " );
            
fclose ( $cf );
        }
        
else {
            
$cf   =   fopen ( $CounterFile ,   " r " );
            
flock ( $cf ,   3 );
            
$Counter   =   trim ( fgets ( $cf ,   $max_len ));
            
fclose ( $cf );
        }

        
if ( session_is_registered ( " in " ==   false ){
            
$Counter ++ ;
            
$cf   =   fopen ( $CounterFile ,   " w " );
            
flock ( $cf ,   3 );
            
//  1 、表示设定锁住档案可以允许别的行程读取;
            // 2 、表示只有该行程可以写入档案;
            // 3 、表示读写均锁住;
            // 4 、不锁住区块 (block)。

             fputs ( $cf ,   $Counter );
        }

        
$Counter_len   =   strlen ( $Counter );

        
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'> " ;
        }
    }
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值