如何通过smarty生成静态化网页

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);//生成

转载于:https://www.cnblogs.com/kuyuecs/archive/2009/11/02/1594495.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值