Smarty模板
Posted 单大源
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Smarty模板相关的知识,希望对你有一定的参考价值。
Smarty是为了实现代码的前后端分离的,也就是它能够把php代码和网页的代码分开。
Smarty的配置文件
<?php echo __FILE__; //取到当前文件的路径。两边都是双下划线。 define("ROOT",str_replace("\\\\","/",dirname(__FILE__)).\'/\'); //常量ROOT中指定项目根目录 define //是用来定义一个常量,这个常量一般是不会变的。常量一般是大写的,变量是小写的。 //定义一个常量叫做ROOT,它的值是逗号后面那些。 也就是当前文件的路径。 $smarty -> auto_literal = false; //就可以让定界符号使用空格。 //smarty这个对象调用auto_literal方法把其值设置为false关闭,就可以让定界符也就是"{" 花括号里 //面的内容可以使用空格。因为花括号里面如果没有空格就会被解析,如果有空格就会被解析掉。这里设置为关 //闭之后就代表设置的定界符里面允许使用空格。这样造成的后果就是样式表内或者JS里面因为他们里面有空格 //所以就可能会被解析掉。 $smarty->setTemplateDir(ROOT.\'templates/\'); //设置所有模板文件存放的位置 $smarty->addTemplateDir(ROOT.\'templates2/\'); //追加一个模板文件夹,可以用来存放模板 $smarty->setCompileDir(ROOT.\'templates_c/\'); //设置编译过的文件存放的文件夹 $smarty->addPluginsDir(ROOT.\'plugins/\'); //设置为模板扩充插件存放目录 //这里不能用set如果用set的话,这个Smarty里面自带的插件就没法使用了。只能用add来追加一个文件夹 $smarty->setCacheDir(ROOT.\'cache/\'); //设置缓存文件存放目录 $smarty->setConfigDir(ROOT.\'configs/\'); //设置模板配置文件存放目录 $smarty->caching = false; //设置Smarty缓存开关功能 $smarty->cache_lifetime = 60*60*24; //设置缓存模板有效时间一天 $smarty->left_delimiter = \'<{\'; //设置模板语言中的左结束符 $smarty->right_delimiter = \'}>\'; //设置模板语言中的右结束符 //这里把定界符改成<{ 和 }> 这样就避免解析错了,出问题。 把定界符改成了一个特殊的符号。 ?>
Smarty里都是根据project这个文件夹的路径来找的,只要知道了project这个文件夹的路径,那么其他的所有文件都可以找到。
Smarty里面所有的文件夹解读:
//cache里面是用来存放缓存文件的。
//configs是用来存放配置文件的。
//css是用来存放样式。js是用来存放js
//main是用来存放程序的文件。是一个专门用来写访问的页面的文件夹,所以访问的都是php页面。
//plugins是用来存放自己写的插件的。
//templates是用来存放模板文件的 就是存放对应模板的
//templates_c是用来存放编译后的文件的。
//init.inc.php这个文件相当于是个入口文件。也就是说所有使用Smarty的页
//面首先都要把这个文件引入才能够使用。
// libs文件夹是Smarty核心文件夹。打开如下
//plugins文件夹里面放的是插件. sysplugins放的是系统插件.这两个文件夹都是用来存放插件的。
//Smarty.class.php是核心文件,是个类。里面一定包含一些东西如左右分隔符,一个存储变量的
//数组也有,里面的一个注册变量的方法会有,一个显示模板的方法也会有。是个核心的类文件
从浏览器访问本地文件的网页在地址栏内输入的格式:
以上是关于Smarty模板的主要内容,如果未能解决你的问题,请参考以下文章