smarty模板的配置

 
建议使用一个兼容性好的smary版本。
太新的版本往往对php的版本支持不好。
 
php推荐使用的模板是:smarty
 
其他模板:phplib
公司自己写的模板
 
如何配置我们的smarty?
1.解压后,把libs文件夹放在网站根目录下。
2.创建两个文件夹 templates(放模板文件) 和templates_c(放编译后的俄文件)

开始使用smarty
1.写一个模板文件(tpl),通常放在templates
2.在php文件中引入smarty的核心文件,并创建smarty对象:

1 //创建smarty对象
2 require_once './libs/Smarty.class.php';
3 $smarty = new Smarty;//建立smarty实例对象$smarty

把数据分配给smarty对象,给tpl文件分配要显示的结果集合。对象,数组。

1 //把$res分配到smarty对象
2 $smarty->assign("myArr",$arr);
3 //指定用哪个模版显示
4 $smarty->display("empList2.tpl");

初始化其他参数(这些初始化应该放在display函数上面)

1 $smarty -> caching = false;//是否使用缓存
2 $smarty -> template_dir = "./templates";//设置模板目录
3 $smarty -> compile_dir = "./templates_c";//设置编译目录
4 $smarty -> cache_dir = "./smarty_cache";//缓存文件夹
5 //修改左右边界符号
6 $smarty -> left_delimiter="<{";
7 $smarty -> right_delimiter="}>";

完整的代码应该是:

 1 <?php
 2 
 3     //创建smarty对象
 4     require_once './libs/Smarty.class.php';
 5 
 6     $smarty = new Smarty;//建立smarty实例对象$smarty
 7     $smarty -> caching = false;//是否使用缓存
 8     $smarty -> template_dir = "./templates";//设置模板目录
 9     $smarty -> compile_dir = "./templates_c";//设置编译目录
10     $smarty -> cache_dir = "./smarty_cache";//缓存文件夹
11     //修改左右边界符号
12     $smarty -> left_delimiter="<{";
13     $smarty -> right_delimiter="}>";
14 
15     $smarty -> assign("var1","hello world");//
16     $smarty -> display("hello.tpl");//
17     
18 ?>

3.一般在控制器中用。创建一个smarty对象。require_once

注意事项:
 
1.替换变量的标识符一般使用:<{}>
因为{}会和内联css和js发生冲突。
 
改动分隔符有两个方法:
   1直接该smarty源码。
   2 动态修改分隔符
          $smarty = new Smarty;
          $smarty ->left_delimiter="<{";
          $smarty ->right_delimiter="}>";
 
传统方法的弱点:
1、php脚本和html,css,js混合,界面不简洁、
2.编写php页面要求程序员同时会网页设计技术、
3,不利于项目分工协同开发。
 
smarty的用处:
1。把界面需要的数据获取到,然后分配给某个界面。
学透前端行业所有技术,玩遍北京周边所有城市。然后我会回到那个生我养我的地方,因为有亲人的地方才是家。
原文地址:https://www.cnblogs.com/snowinmay/p/3169181.html