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

PHP
在PHP中使用模板的方法
php中iconv函数使用方法
谈谈新手如何学习PHP网络编程
JS实现php的伪分页
需要使用php模板的朋友必看的很多个顶级PHP模板引擎比较分析
五个PHP程序员工具
CodeIgniter php mvc框架 中国网站
php mysql数据库操作类
php MySQL与分页效率
WindowsXP中快速配置Apache+PHP5+Mysql
php创建多级目录代码
php中对xml读取的相关函数的介绍一
Excel数据导入Mysql数据库的实现代码
比较全的PHP 会话(session 时间设定)使用入门代码
快速配置PHPMyAdmin方法
MySQL数据源表结构图示
改变Apache端口等配置修改方法
PHP读取MySQL数据代码
详解PHP显示MySQL数据的三种方法
PHP中Date获取时间不正确怎么办

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-23   浏览: 230 ::
收藏到网摘: 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();
    //------------------静态生成完成-----------