PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例


Posted in PHP onApril 11, 2016

本文实例讲述了PHP模板引擎Smarty之配置文件在模板变量中的使用方法。分享给大家供大家参考,具体如下:

配置文件在模板中的作用是:给前端设计页面定义变量,主要控制的是模板的外观,与 PHP 程序无关。

使用步骤:

1、使用 $tpl->configs_dir="目录"  //指定配置文件存放的目录;

2、在模板中要使用 <{configs_load file="配置文件"}> 加载f配置文件,如果有区域的话,可以使用 section="区域" 来指定区域

设置区域的目的是:为了不同的文件调用不同区域的配置文件变量。
在配置文件中是通过“[区域名称]”来指定区域的,其他没有指定区域的变量均为共有变量,即每一个页面都可以使用。

3、在指定的目录下建立配置文件。

下面通过一个实例来演示,实例思路:主文件 index.php 调用模板文件 index.tpl,在 index.tpl 中设置配置文件变量(与 PHP 程序无关)

init.inc.php Smart模板引擎初始化文件

<?php
  define('ROOT_PATH', dirname(__FILE__)); //网站根目录
  require ROOT_PATH.'/libs/Smarty.class.php'; //引入 Smart 模板引擎
  $_tpl = new Smarty(); //初始化一个对象
  $_tpl->template_dir = ROOT_PATH.'/tpl/'; //重新设置网站的模板目录
  $_tpl->compile_dir = ROOT_PATH.'./com/'; //重新设置网站的编译文件目录
  $_tpl->config_dir = ROOT_PATH.'/configs/'; //重新设置网站的配置文件目录
  $_tpl->left_delimiter = '<{'; //重新设置网站的左定界符
  $_tpl->right_delimiter = '}>'; //重新设置网站的右定界符
?>

index.php

<?php
  require 'init.inc.php'; //引入模板初始化文件
  global $_tpl;
  $_tpl->display('index.tpl'); //载入模板文件
?>

index.tpl 配置变量的使用方式有两种:
一、<{#配置变量#}>;
二、<{$smart.config.配置变量}>

<{config_load file="view.conf" section="one"}>
<!-- view.conf文件不能写完整路径,因为在初始化文件中已经指定,section="one" 代表加载[one]区域 -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>配置文件在模板变量中的使用</title>
</head>
<body>
    <table border="<{#border#}>" align="<{#align#}>" width="<{#tabw#}>">
       <tr bgcolor="<{#bgcolor#}>" align="<{#align#}>">
         <td>aaaa</td>
         <td>aaaa</td>
         <td>aaaa</td>
         <td>aaaa</td>
       <tr>
       <tr>
         <td>aaaa</td>
         <td>aaaa</td>
         <td>aaaa</td>
         <td>aaaa</td>
       <tr>
       <tr>
         <td>aaaa</td>
         <td>aaaa</td>
         <td>aaaa</td>
         <td>aaaa</td>
       <tr>
       <tr>
         <td colspan="<{#colspan#}>" align="<{#align#}>">
            区域变量的显示:
            <{#aa#}><br />
            <{#bb#}><br />
            <{#cc#}><br />
         </td>
       </tr>
    </table>
  </body>
</html>

/configs/view.conf 配置文件

border=2
tabw=600
tabh=500
bgcolor=yellow
align=center

[one]
colspan=4
aa=one section

[two]
bb=two section

[three]
cc=three section

执行结果,如图所示:

PHP模板引擎Smarty之配置文件在模板变量中的使用方法示例

希望本文所述对大家基于smarty模板的PHP程序设计有所帮助。

PHP 相关文章推荐
一个简单的自动发送邮件系统(三)
Oct 09 PHP
Ajax+PHP 边学边练 之二 实例
Nov 24 PHP
PHP垃圾回收机制简单说明
Jul 22 PHP
PHP 防注入函数(格式化数据)
Aug 08 PHP
基于PHP导出Excel的小经验 完美解决乱码问题
Jun 10 PHP
PHP在引号前面添加反斜杠(PHP去除反斜杠)
Sep 28 PHP
php中mt_rand()随机数函数用法
Nov 24 PHP
9个经典的PHP代码片段分享
Dec 18 PHP
php定义一个参数带有默认值的函数实例分析
Mar 16 PHP
php文件上传后端处理小技巧
May 22 PHP
PHP实现驼峰样式字符串(首字母大写)转换成下划线样式字符串的方法示例
Aug 10 PHP
php实现微信发红包功能
Jul 13 PHP
PHP模板引擎Smarty中变量的使用方法示例
Apr 11 #PHP
php实现生成验证码实例分享
Apr 10 #PHP
PHP实现简单实用的分页类代码
Apr 08 #PHP
PHP文件上传类实例详解
Apr 08 #PHP
PHP实现基于mysqli的Model基类完整实例
Apr 08 #PHP
php生成带logo二维码方法小结
Apr 08 #PHP
PHP使用PDO操作数据库的乱码问题解决方法
Apr 08 #PHP
You might like
一步一步学习PHP(6) 面向对象
2010/02/16 PHP
PHP中如何实现常用邮箱的基本判断
2014/01/07 PHP
php+mysql查询实现无限下级分类树输出示例
2016/10/03 PHP
jQuery动画效果-fadeIn fadeOut淡入浅出示例代码
2013/08/28 Javascript
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
Chrome扩展页面动态绑定JS事件提示错误
2014/02/11 Javascript
js获取url中&quot;?&quot;后面的字串方法
2014/05/15 Javascript
jquery使用remove()方法删除指定class子元素
2015/03/26 Javascript
JS Array创建及concat()split()slice()的使用方法
2016/06/03 Javascript
JavaScript制作简单的框选图表
2017/05/15 Javascript
layui弹出层效果实现代码
2017/05/19 Javascript
vue2.x select2 指令封装详解
2017/10/12 Javascript
原生js+cookie实现购物车功能的方法分析
2017/12/21 Javascript
node中的session的具体使用
2018/09/14 Javascript
Javascript中parseInt的正确使用方式
2018/10/17 Javascript
vue-cli3 从搭建到优化的详细步骤
2019/01/20 Javascript
Python基于PycURL自动处理cookie的方法
2015/07/25 Python
Python解析Excle文件中的数据方法
2018/10/23 Python
详解用Python实现自动化监控远程服务器
2019/05/18 Python
在python plt图表中文字大小调节的方法
2019/07/08 Python
Python面向对象之多态原理与用法案例分析
2019/12/30 Python
python解释器pycharm安装及环境变量配置教程图文详解
2020/02/26 Python
加拿大票务网站:Ticketmaster加拿大
2017/07/17 全球购物
美国电力供应商店/电气批发商:USESI
2018/10/12 全球购物
长青弘远的面试题
2012/06/09 面试题
幼儿教师个人求职信范文
2013/09/21 职场文书
县优秀教师事迹材料
2014/01/31 职场文书
班主任对学生的评语
2014/04/26 职场文书
关工委先进个人事迹材料
2014/05/23 职场文书
维修工先进事迹
2014/05/29 职场文书
2014社区健康教育工作总结
2014/12/16 职场文书
放假通知
2015/04/14 职场文书
信息简报范文
2015/07/21 职场文书
《夜莺的歌声》教学反思
2016/02/22 职场文书
环境保护宣传标语大全!
2019/06/28 职场文书
Python matplotlib多个子图绘制整合
2022/04/13 Python