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

PHP
实现树状结构的两种方法
PHP4(windows版本)中的COM函数
多文件上传的例子
PHP中的超全局变量
PHP树的代码,可以嵌套任意层
强烈推荐:php.ini中文版(1)
强烈推荐:php.ini中文版(2)
国内php原创论坛
PHP&MYSQL服务器配置说明
Apache设置虚拟WEB
提升PHP执行速度全攻略
Mysql的常用命令
用Apache反向代理设置对外的WWW和文件服务器
php.ini中文版
ASP知识讲座四
一个用于MySQL的PHP XML类
phpmyadmin操作流程
PHP4中实现动态代理
把PHP安装为Apache DSO
正则表达式语法

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


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