<?php /******************************************************* 作者: 吴振亨 (Biz)--phpscript E-mail:wuzhenheng@china.com web: http://phpscript.osh.com.cn 文件名: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="".$this->Redirect; $LinkString.="?url=".$AdData[$id]["url"]; $LinkString.="" Target="".$this->Target; $LinkString.="" Title="".$AdData[$id]["title"]; $LinkString.="" >"; $LinkString.=" <img border="".$this->Border; $LinkString.="" src="".$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"); */ ?>
【本文版权归作者与奥索网共同拥有,如需转载,请注明作者及出处】 |