Smarty模板的使用时为了使用户界面和业务数据分离开
安装Smarty,官方下载网址:http://www.smarty.net/download.php
解压后只要将文件夹里“libs”文件夹拷贝到根目录下
而libs中也只要用到 Smarty.class.php 这个类php
在根目录下建立要用的文件
其中 tpls : 模板的目录,coms : 生成的目录,这两在开发是这个目录不要放在web服务器的根目录下
tpls目录下创一个demo.html,这是一个表现层界面
<html> <head> <title><{ $title }></title> <style> body {color:red;} </style> </head> <body> <{$content}><br> <{$content}><br> <{$content}><br> <img src="img.gif" /> <script> if(true){ alert(new Date()); } </script> </body> </html>
在 init.inc.php 中用于存放php中初始化的代码
同样要设置模板文件存放目录和编译目录,并且为了防止与空格发生冲突,我们修改定界符
这里要强调的是指定输出的固定目录,这样不止能在根目录下调用,也能在外目录下调用
<?php //输出指定的固定目录,并将"\"转成"/",做到跨目录 define("ROOT",str_replace("\\","/",dirname(__FILE__)).'/'); require ROOT."/libs/Smarty.class.php"; //创建模板引擎对象 $smarty = new Smarty(); //smarty3设置存放目录 $smarty->setTemplateDir(ROOT."/tpls") ->setCompileDir(ROOT."/coms");//指定编译目录 //修改定界符,防止与空格发生冲突 $smarty->auto_literal=false; //默认true,false不与空格冲突 $smarty->left_delimiter="<{"; $smarty->right_delimiter="}>";
demo.php 是主要的文件,主要是用 assign() 方法将变量植入模板中,再用 display() 方法将网页输出
<?php include "init.inc.php"; $smarty->assign("title","11111111"); $smarty->assign("content","2222222222"); $smarty->display("demo.html");
基本的Smarty用法就像上面那样,不过这只是Smarty一小部分,Smarty是功能非常强大的模板
时间: 2024-10-04 22:59:49