当前位置: 首页 > 图文教程 > 网络编程 > PHP > 方便实用的PHP生成静态页面类

PHP
一键删除顽固的空文件夹 软件下载
获得Google PR值的PHP代码
解决控件遮挡问题:关于有窗口元素和无窗口元素
Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)
phpmyadmin中配置文件现在需要绝密的短语密码的解决方法
一个数据采集类
php中的一个中文字符串截取函数
自己前几天写的无限分类类
简单采集了yahoo的一些数据
回答PHPCHINA上的几个问题:URL映射
模拟flock实现文件锁定
一个捕获函数输出的函数
cache_lite试用
再次研究下cache_lite
PHP数据缓存技术
修改了一个很不错的验证码,共享之。
谈谈PHP的输入输出流
使用apache模块rewrite_module (转)
让PHP支持页面回退的两种方法[转]
mysql中存储过程、函数的一些问题

方便实用的PHP生成静态页面类


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 259 ::
收藏到网摘: n/a

不喜欢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();
    //------------------静态生成完成-----------