Installation and optimization of PHP Smarty3 module

WBOY
Release: 2016-08-08 09:27:46
Original
998 people have browsed it

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>
Copy after login

在  init.inc.php  中用于存放php中初始化的代码

同样要设置模板文件存放目录和编译目录,并且为了防止与空格发生冲突,我们修改定界符

这里要强调的是指定输出的固定目录,这样不止能在根目录下调用,也能在外目录下调用

<?php
    
    //输出指定的固定目录,并将"\"转成"/",做到跨目录
    define("ROOT",str_replace("\\","/",dirname(__FILE__)).&#39;/&#39;);
    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="}>";
Copy after login

demo.php 是主要的文件,主要是用 assign()  方法将变量植入模板中,再用  display()  方法将网页输出

<?php
    include "init.inc.php";

    $smarty->assign("title","11111111");
    $smarty->assign("content","2222222222");

    $smarty->display("demo.html");
Copy after login

基本的Smarty用法就像上面那样,不过这只是Smarty一小部分,Smarty是功能非常强大的模板

以上就介绍了php之Smarty3 模块的安装调优,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template