<?php 
/******************************************************* 
 作者: 吴振亨 (Biz)--phpscript 
 E-mail:wuzhenheng@china.com 
 web:  
 文件名:AdRotator.class.php3                 
 版权声明:                      
 如果您使用了本文件,请给作者写一封E-mail   
 如有问题欢迎与作者联系 
 谢谢您的关注!                     
********************************************************/ 
/* 
广告条管理程序 
public method 
    GetAdvertisement($adfile) 
parameters 
    Target= 
    Width= 
    Height= 
    Border= 
    Redirect= 
*/ 
class AdRotator { 
    var $Target="_blank"; 
    var $Width="460"; 
    var $Height="60"; 
    var $Border=0; 
    var $Redirect=""; 
    var $BannerData=array (); 
    var $RandTemp=1; 
function AdRotator() 
    { 
    } 
/* 
public  
返回广告的链接字串 
*/ 
function GetAdvertisement($adfile) 
    { 
    if(count($this->BannerData)==0) 
        { 
        $this->BannerData=$this->ReadAdFile($adfile); 
        } 
    $AdData=$this->BannerData; 
    $uplimited=count($AdData); 
    //随机产生一个ID 
    srand((double)microtime()*1000000000000000000); 
    $id=@rand(1,$uplimited); 
        while($this->RandTemp==$id) 
               { 
            srand((double)microtime()*1000000000000000000); 
               //$id=@rand(1,count($AdData)); 
               $id=@rand(1,$uplimited); 
               } 
           $this->RandTemp=$id; 
       //echo $id; 
       //echo count($AdData); 
       //echo $AdData[5]["image"]; 
         
        $LinkString=" <a href=https://www.jb51.net/"".$this->Redirect; 
        $LinkString.="?url=".$AdData[$id]["url"]; 
        $LinkString.="" Target="".$this->Target; 
        $LinkString.="" Title="".$AdData[$id]["title"]; 
        $LinkString.="" >"; 
        $LinkString.=" <img border="".$this->Border; 
        $LinkString.="" src=https://www.jb51.net/"".$AdData[$id]["image"]; 
        $LinkString.="" width="".$this->Width; 
        $LinkString.="" height="".$this->Height; 
        $LinkString.="" >"; 
        $LinkString.="</a>"; 
        //echo $LinkString; 
        return $LinkString; 
    } 
/* 
private 
读入文件的基本设置 
*/ 
function ReadAdFile($adfile) 
    { 
    $FP=fopen($adfile,"r"); 
    while($buffer=@fgets($FP,1024)) 
        { 
        if(!eregi("#",$buffer)) 
            { 
            if(eregi("^*",$buffer)) 
                { 
                $switchto="off"; 
                } 
            $SetTemp=split("=",$buffer); 
            if($switchto=="") 
                { 
                switch     ($SetTemp[0]) 
                    { 
                    case "REDIRECT": 
                    $this->Redirect=$SetTemp[1]; 
                    break; 
                    case "WIDTH": 
                    $this->WIDTH=$SetTemp[1]; 
                    break; 
                    case "HEIGHT": 
                    $this->HEIGHT=$SetTemp[1]; 
                    break; 
                    case "BORDER": 
                    $this->BORDER=$SetTemp[1]; 
                    break; 
                    case "TARGET": 
                    $this->Target=$SetTemp[1]; 
                    break; 
                    } 
                } 
            else 
                { 
                switch     ($SetTemp[0]) 
                    { 
                    case "image": 
                    $i++; 
                    $BannerData[$i]["image"]=$SetTemp[1]; 
                    //echo "<br>";echo $buffer;echo $SetTemp[1]; 
                    //echo $BannerData[$i]["image"]; 
                    break; 
                    case "url": 
                    $BannerData[$i]["url"]=$SetTemp[1]; 
                    break; 
                    case "title": 
                    $BannerData[$i]["title"]=$SetTemp[1]; 
                    break; 
                    case "rate": 
                    $BannerData[$i]["rate"]=$SetTemp[1]; 
                    break; 
                    }//end of switch 
                }//end of if($switch) 
            }//end of if(#) 
        }//end of while 
    return $BannerData; 
    }//end of function 
}//end of class 
/* 
使用方法 
广告设置文件书写格式banner.txt 
------开始--- 
REDIRECT=./adredir.asp 
WIDTH=468 
HEIGHT=60 
BORDER=0 
* 
#注释 
#某某公司广告1 
image=../banner/1.gif 
url=http://www.asps0ite.com1 
title=One 
rate=30 
----结束----- 
说明: 
与ASP的广告组件相仿 
*表示设置,其他为图片的设置 #:表示注释 
----使用----- 
$banner=new AdRotator(); 
echo $banner->GetAdvertisement("./banner.txt"); 
echo $banner->GetAdvertisement("./banner.txt"); 
echo $banner->GetAdvertisement("./banner.txt"); 
*/ 
?>  
【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】    
您可能感兴趣的文章:
