程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 如何通過smarty生成靜態化網頁

如何通過smarty生成靜態化網頁

編輯:關於PHP編程

Smarty最大的功能是做模版的頁面緩存。也就是通過Smarty可以完成兩個步驟:編譯+解析
第一步:編譯。是指把模版文件的標簽替換為純php,再保存在緩存位置,保存的文件擴展名是PHP,我把這個步驟叫做編譯(這是我自己的叫法,不是官方的)
第二步:解析。也就是把剛才編譯的PHP文件解析執行而已~~這個就不用多做解釋了
切入正題,在Smarty.class.php文件中加入如下代碼
function MakeHtmlFile($file_name, $content)
     {     //目錄不存在就創建
         if (!file_exists (dirname($file_name))) {
              if (!@mkdir (dirname($file_name), 0777)) {
                      die($file_name."目錄創建失敗!");
              }
          }
                    
          if(!$fp = fopen($file_name, "w")){
              echo "文件打開失敗!";
              return false;
          }
          if(!fwrite($fp, $content)){
              echo "文件寫入失敗!";
             fclose($fp);
              return false;
          }
        
         fclose($fp);
             chmod($file_name,0666);
      }
這個函數的作用就是保存文件~~
調用方法如下
require '../libs/Smarty.class.php';
$smarty = new Smarty;
//…………省略變量定義和賦值
//$smarty->display('index.tpl');
$content=$smarty->fetch("index.tpl");
$smarty->MakeHtmlFile('./index.html',$content);//生成 

摘自 PainsOnline的專欄 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved