smarty 模板php,PHP 模板之Smarty 模板介绍

8e33d61034d7b3c4d53f4abb4cb7ee8c.png

一、Smarty 简介

Smarty 是 PHP 中的一个模板引擎,是众多 PHP 模板中最优秀、最著名的模板之一。

1、什么是Smarty

Smarty 是一个使用 PHP 编写的 PHP 模板引擎,它将一个应用程序分成两个部分实现:视图和逻辑控制。简单地讲,目的就是将 UI(用户界面)和 PHP code(PHP代码)分离。这样,程序员在修改程序时不会影响的页面设计,而美工在重新设计或是修改页面时也不会影响程序逻辑。

2、Smarty 特点

采用 Smarty 模板编写的程序可以获得最快的速度。注意,这是相对于其他模板而言。可以自行设置模板定界符,如{}、{{}}、等。仅对修改过的模板文件进行编译。模板中可以使用 if/elseif/else/endif。内建缓存支持。可自定义插件。二、Smarty 的安装配置

1、Smarty 下载和安装

PHP 没有内置 Smarty 模板,需要单独下载和配置,而且 Smarty 要求服务器上的 PHP 版本最低为4.0.6。用户可以通过官网下载最新的 Smarty 压缩包。本次使用的是 smarty-3.1.35。

将压缩包解压后,得到一个 libs 目录,复制 libs 目录到服务器根目录下,并将其重命名,一般该目录的名称为 smarty 或 class 等,这里改为 smarty。至此,Smarty 模板安装完毕。

2、第一个 Smarty 程序

具体开发步骤如下:

(1)新建一个程序目录,存放位置为“服务器地址\www\project\collection\test”,命名为 test 。

(2)复制 Smarty 到目录 test 下,在 Smarty 目录下新建 4 个目录,分别为 templates、templates_c、configs 和 cache。这是,目录结果如图1 所示。

8ba5f8688209cda606cc5a289d239dda.png图1 Smarty 包的目录结构

(3)新建一个 .html 静态页,输入数据。输入完毕后将文件保存到刚新建的 templates 目录下,并命名为 index.html,代码如下:

{$title}

{$content}

说明:代码中加粗的部分就是 smarty 标签,大括号“{}”为标签的定界符,$title和$content 为变量。

(4)返回上级目录,在“test\”下新建一个 index.php 文件。代码如下:

6d2a080b2685cdba7f0ca603ca1b58fd.png

打开浏览器运行index.php文件,结果如下图:

10572fecb69cf7cd281a32a2d2cece94.png

3、Smarty 配置

下面详细讲解 Smarty 模板的配置步骤:

(1)确定 Smarty 目录的位置。一般会放在更目录下。

(2)新建4个目录templates、templates_c、configs 和 cache。其中目录templates 为模板文件目录;目录 templates_c 为存储项目的编译文件;目录 configs 存储项目的配置文件;目录 cache 存储项目的缓存文件。

(3)创建配置文件。如果要应用 Smarty 模板,就一定要包含 Smarty 类库和相关信息。将配置信息写到一个文件中,使用只需加载文件即可。配置文件 config.php 的代码如下:

<?php // 定义服务器绝对路径define('BASE_PATH',$_SERVER['DOCUMENT_ROOT']);// 定义 Smarty 目录的绝对路径define('SMARTY_PATH','\test\smarty\\');// 加载 smarty 类库文件require BASE_PATH.SMARTY_PATH.'Smarty.class.php';// 实例化 smarty 对象$smarty = new Smarty();// 定义个目录路径$smarty->template_dir = BASE_PATH.SMARTY_PATH.'/templates/';$smarty->compile_dir = BASE_PATH.SMARTY_PATH. '/templates_c/';$smarty->config_dir = BASE_PATH.SMARTY_PATH. '/configs/';$smarty->cache_dir = BASE_PATH.SMARTY_PATH. '/cache/';?>

配置文件参数说明:

BASE_PATH:指定服务器的绝对路径。SMARTY_PATH:指定 Smarty 目录的绝对路径。require:加载 Smarty 类库文件 Smarty.class.php。$smarty:实例化 Smarty 对象。$smarty->template_dir:定义模板文件存储目录。$smarty->compile_dir:定义编译文件存储目录。$smarty->config_dir:定义配置文件存储目录。$smarty->cache_dir:定义模板缓存文件目录。(1)assign() 方法为模板变量赋值。

(2)display() 方法用于显示模板。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值