<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    PHP中使用smarty生成靜態文件的實例

    時間:2025-04-13 16:28:29 php語言 我要投稿
    • 相關推薦

    PHP中使用smarty生成靜態文件的實例

      導語:PHP中使用smarty生成靜態文件,并不是想象中那么容易,下面是百分網小編為大家整理了一下PHP中使用smarty生成靜態文件的實例,希望對你能有所幫助。
      首先先要把需要靜態化的內容填充到模版中去
      代碼如下:
      #eg.這個是靜態化首頁的
      function staticIndex(){
      $newslist = $article->getArticles(null,54,'DESC',1,6,false,1,2,'',0,0,1);
      if($newslist){
      foreach($newslist as $k=>$v){
      $newslist[$k]['title_all'] = $v['title'];
      $newslist[$k]['title'] = cutstr($v['title'],36,'…');
      }
      $smarty->assign('newslist',$newslist);
      }
      $content = '';
      $content = $smarty->fetch('index.html',true);//這是Smarty自帶的生成靜態頁面的函數
      $static_name = ROOT_PATH.'index.html';//這是生成靜態頁面當前的路徑文件
      fopen($static_name,'a');//打開這個文件
      @file_put_contents($static_name,$content);//最后寫進去
      return true;
      }
      //靜態化列表頁,按類別不同經行靜態化
      function staticContent(){//需要靜態話的條數
      $ids = array();//獲取所有的內容
      $ids = $this->getListIds();//這個方法獲取所有的內容,下面紅字部分對應它的方法
      foreach($ids as $k=>$value){
      //echo $value['catid'];
      if(!file_exists(ROOT_PATH.'demo/')){//判斷根目錄下面有沒有這個文件夾,如果沒有則創建demo這個文件夾
      mkdir(ROOT_PATH.'demo/');
      }
      if(!file_exists(ROOT_PATH.'demo/'.$value['catid'])){//判斷這個文件夾下面有沒有對應的類別文件夾
      mkdir(ROOT_PATH.'demo/'.$value['catid']);
      }
      $html_content = $this->getDemoContent($value['demoid']);
      $static_name = ROOT_PATH.'demo/'.$value['catid'].'/'.$value['demoid'].'.html';
      fopen($static_name,'a');
      @file_put_contents($static_name,$html_content);
      }
      return true;
      }
      //拿出需要靜態化的頁面ID
      function getListIds(){
      $sql = "select * from {$this->tablepre}demo order by demoid asc";
      $rs = $this->db->getAll($sql);
      if($rs){
      return $rs;
      }else{
      return false;
      }
      }
      //content單頁靜態化
      function getDemoContent($id){
      global $smarty,$view_templates,$admin_templates;
      loadModel(array('demo'));
      $demo = new demo();
      $content = '';
      $smarty->template_dir = ROOT_PATH.$view_templates;
      $getMobanOne = $this->getMobanDetail($id);
      $mobandetail = $demo->MobanList($id);
      foreach($mobandetail as $k=>$v){
      $smarty->assign($k,$v);
      }
      $this->catid = $getMobanOne['catid'];
      $smarty->assign('pre_title',$mobandetail['membername']);
      $smarty->assign('mobandetail',$mobandetail);
      $content = $smarty->fetch('demo_show.html',true);
      $smarty->template_dir = ROOT_PATH.$view_templates;
      return $content;
      }

    【PHP中使用smarty生成靜態文件的實例】相關文章:

    php簡單偽靜態實例09-16

    php實現偽靜態的方法實例09-25

    php靜態頁生成方法10-25

    php使用html5實現多文件上傳實例09-04

    PHP生成SiteMap文件的代碼09-27

    PHP生成PDF文件withFPDF10-28

    php技術生成靜態頁面的方法07-28

    如何生成靜態頁面的PHP類09-15

    生成PHP網站頁面靜態化的方法06-14

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人