您的位置:首页 > 编程语言 > PHP开发

PHP Smarty模板

2015-03-10 20:06 288 查看
Smarty模板的一个最重要的功能就是将前端和后端分离。前端将完全不用php的语言,用Smarty自己默认定义的限界符{}

感觉到时候前端用bootstrap 后台用php,应该会是个不错的组合(bootstrap还不太会用,争取这周学会使用bootstrap模板)<?php
define('BASE_PATH', $_SERVER['DOCUMENT_ROOT']);
//定义Smarty的绝对路径
define('SMARTY_PATH', '/phplearn/Smarty/2/Smarty/libs/' );

//加载Smarty文件
require BASE_PATH.SMARTY_PATH.'Smarty.class.php';

//实例化一个Smarty对象
$smarty = new Smarty;

//定义各个目录的路径
$smarty->template_dir = BASE_PATH."/phplearn/Smarty/2/Smarty/demo/templates/";
$smarty->compile_dir = BASE_PATH."/phplearn/Smarty/2/Smarty/demo/templates_c/";
$smarty->config_dir = BASE_PATH."/phplearn/Smarty/2/Smarty/demo/configs/";
$smarty->cache_dir = BASE_PATH."/phplearn/Smarty/2/Smarty/demo/cache/";

?>上面的这段代码是用来实现Smarty的初始化的,定义各个路径

Smarty中前端和后端之间信息的传递是利用的是assign函数,举例如下:<?php
header("Content-type:text/html;charset=utf-8");
include("config.php");//载入配置文件
$arr = array('0'=>'computerbook','name'=>'PHP从入门到精通','unit_price'=>array('price'=>'¥65.00','unit'=>'本'));
$smarty->assign("title","第一个Smarty程序");
$smarty->assign("arr",$arr);
$smarty->display("index.html");
?>
在你templates这个文件夹里的index.html就可以使用{$arr} 和 {$title} 这两个变量

还有一种全局变量的定义形式,是利用conf配置文件。title = Welcome to Smarty!
cutoff_size = 40

[setup]
bold = true
这是一个conf配置文件,放在configs目录下,则在index.html中就可以引用该配置文件,里面变量输出的形式是{#变量名#}
注意,应用文件时,默认的开始路径是index.html的所在目录 引入文件的格式是{config_file file="xxxx"}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  PHP Smarty