当前位置:PHP教程首页 >> 高手进阶 >> 方便实用的PHP生成静态页面类
方便实用的PHP生成静态页面类
2008-11-13 16:41:05  作者:  来源:互联网  浏览次数:1  文字大小:【】【】【
  •   不喜欢Smarty,直接写了一个生成静态的类,方便简单实用,希望大家继续完善。

不喜欢Smarty,直接写了一个生成静态的类,方便简单实用,希望大家继续完善。

/*********************/
/*                   */
/*  Version : 5.2.5  */
/*  Author  : liqiangwork#sohu.com  */
/*  QQ : 570937581   */
/*                   */
/*********************/
//-----------------------------生成静态的类-------------------------------
class Makehtml{
   public 
$MbUrl,$OutUrl,$AllHtml,$SouChar,$ObjChar//变量
   
public $row//游标
   
public $Shuzusou,$Shuzuobj//替换的字符串数组
   //-----------------------初始化------------------------- 
    
function __construct(){ //初始化
     
$this->MbUrl="";
     
$this->OutUrl="";
     
$this->AllHtml="";
     
$this->Sql="";
     
$this->SouChar="";
     
$this->ObjChar="";
    }
   
   
   
//-----------------------------自动按字段替换---------------------------
    
function AutoReplace(){
      
//------------------自动获取要替换的字符串-------------------
      
$tlen=count($row);
      
$shuzu1=array();
      
$shuzu2=array();
      if(
$row){
      
$i=0;
      foreach(
$row as $key => $value){      
     
$shuzu2[i]="<=\$".$key."\$>"
     
$shuzu1[i]=$value;  
     
$i++;
      }
      
$this->Replacehtml(shuzu2,shuzu1);
      }
      
//------------------自动获取要替换的字符串-------------------
    
}
   
//-----------------------------自动按字段替换完成------------------------
   
   
   //-----------------------------批量替换数组--------------------------
   
function Replacehtml($Shuzusou,$Shuzuobj){  //批量替换数组
    
if(count($Shuzusou)!=count($Shuzuobj)){
      exit(
"替换数组不匹配");
    }
    if(
$this->AllHtml==""){
      exit(
"没有要替换的内容");    
    }
    for(
$i=0;$i<count($Shuzusou);$i++){
     
$this->AllHtml=str_replace($Shuzusou[$i],$Shuzuobj[$i],$this->AllHtml);
     
//print("<br>".$Shuzusou(i)."=".$Shuzuobj(i)."<br>") 
   
}
   }
   
//-----------------------------批量替换数组完成--------------------------
   
   //-----------------------------读取文件---------------------------------
    
function Readfile(){
     
$file=fopen($this->MbUrl,"r");
     
$fsize=filesize($this->MbUrl);
     
$this->AllHtml=fread($file,$fsize);
     
fclose($file);
       }   
   
//-----------------------------读取文件完成------------------------------
   //-----------------------------保存文件---------------------------------
   
function SaveFile(){
    
$file=fopen($this->OutUrl,"w");
    
fwrite($file,$this->AllHtml);
    
fclose($file);
   }
   
//-----------------------------保存文件完成------------------------------
}
//------------------------------生成静态的类完成-------------------------------

 

相关实例:

//------------------静态生成----
     
$MyMake=new Makehtml;
     
$MyMake->MbUrl="News_Show.shtml";
     
$MyMake->Readfile();
     
$THTml=$MyMake->AllHtml;
     
$shuzu1=array();
     
$shuzu2=array();
     
$shuzu1[0]="<=\$keybord\$>";
     
$shuzu1[1]="<=\$description\$>";
     
$shuzu1[2]="<=\$title\$>";
     
$shuzu1[3]="<=\$Title1\$>";
     
$shuzu1[4]="<\$=Bid\$>";
     
$shuzu1[5]="<\$=Id\$>";
     
$shuzu1[6]="<=\$Contentb\$>";
     
$shuzu1[7]="<\$=BigId\$>";
     
$shuzu1[8]="<=\$Date\$>";
     
$shuzu1[9]="<=\$City\$>";
     
$shuzu1[10]="<=\$SmallId\$>";
     
$shuzu1[11]="<=\$CityId\$>";
     
$shuzu1[12]="width=\"100%\"";
     
$MyMake->OutUrl="News_show_1.shtml";
     
$shuzu2[0]="数组0";
     
$shuzu2[1]="数组1";
     
$shuzu2[2]="数组2";
     
$shuzu2[3]="数组3";  
     
$shuzu2[4]="数组4";        
     
$shuzu2[5]="数组5";
     
$shuzu2[6]="数组6";
     
$shuzu2[7]="数组7";
     
$shuzu2[8]="数组8";
     
$shuzu2[9]="数组9";
     
$shuzu2[10]="数组10";
     
$shuzu2[11]="数组11";
     
$shuzu2[12]="width=\"95%\"";
     
$MyMake->Replacehtml($shuzu1,$shuzu2);
     
$MyMake->SaveFile();
    
//------------------静态生成完成-----------
完整实例下载:http://www.php118.com/down/down_119.html

0

顶一下

0

踩一下
相关文章
友情链接 | 网站地图 | 关于我们 | 版权声明 | 联系我们 | 广告服务

  • Copyright 2008 www.php118.com
    版权所有:PHP118—中国PHP门户
  •     鲁ICP备08016270号