`
kefeng
  • 浏览: 15548 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
文章分类
社区版块
存档分类
最新评论

php之Smarty3 模块的安装调优

 
阅读更多

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是功能非常强大的模板




















版权声明:本文为博主原创文章,未经博主允许不得转载。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics