在模板中输出动态数据可以用{},所以容易与css中的标签相互冲突,所以使用{literal}{/literal}标签包起来就不会用模板的解析方式解析,变量的来源有三种,用assign方法赋值,系统保留变量,配置文件中的变量

使用地址栏中的数据,也是$_GET的数据,可以用$smarty.get.变量名 来获取,定义常量可以用$smarty.const.常量名来获取

获取配置文件中的数据,配置文件中的数据格式key=value,一行一条数据,首先在控制页面中引入这个文件,用$smarty->config_dir='';值是配置文件相对于这个控制页面的相对位置,在html页面中{config_load file=''}file值是配置文件相对于这个显示页面的位置,然后用$smarty.config.配置名  进行输出

进行数据运算就在{}标签中直接进行运算

如果有多个相同的值,如果用assign方法进行赋值,就会将之前的重名变量进行重新赋值,之前的值被覆盖,可以用append方法进行赋值,参数和assign一样,如果不存在同名变量,和assign的作用一致,如果存在,就把这个变量变成数组,再将这个值追加最最后的位置

控制页面01.php

<?php
//引入smarty文件
require('../../smarty3/libs/smarty.class.php'); //实例化
$smarty=new Smarty(); // print_r($smarty);调试成功 //配置
//$smarty->template_dir='./temp';
//$smarty->compile_dir='./comp';
$smarty->setTemplateDir('./temp');
$smarty->setCompileDir('./comp');
// 赋值
$smarty->assign('name','张三'); //定义数组,传数组
$arr=array('name'=>'李四','age'=>14);
$smarty->assign('arr',$arr); //定义常量
define('HEI',8889); //引入配置文件
$samarty->config_dir='./config.php'; $smarty->display('01.html'); ?>

渲染页面01.html

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Smarty模板的使用</title>
<style>
{literal}p{
background:green;
}
{/literal}
</style>
</head>
<body>
下面输出姓名:<br/>
<p>{$name}</p>
下面输出数组中的内容:<br/>
<p>姓名是:{$arr.name},年龄{$arr.age}</p>
接收地址栏的信息<br/>
<p>这是第{$smarty.get.id}号</p>
输出常量的值<br/>
<p>{$smarty.const.HEI}米</p>
引入配置文件<br/>{config_load file='../config.php'}
<p>id是{$smarty.config.id},名字是{$smarty.config.name},uri是{$smarty.config.uri}</p>
</body>
</html>

配置文件config.php,名字随意起

id=1233
name=你是你谁
uri=当前文件夹

smarty中的变量使用的更多相关文章

  1. smarty中三种变量的访问方式

    在模板中smarty有三种变量,第一种,php分配的变量,第二种配置文件里的变量,第三种,PHP全局数组里的变量,配置文件里变量的访问方式可以是{#bgcolor#},"#"必须紧 ...

  2. smarty获取php中的变量

    {$smarty}保留变量不需要从PHP脚本中分配,是可以在模板中直接访问的数组类型变量,通常被用于访问一些特殊的模板变量.例如,直接在模板中访问页面请求变量.获取访问模板时的时间邮戳.直接访问PHP ...

  3. Smarty中的请求变量和保留变量的使用范例

    PHP中提供的超全局数组 Smarty中对应的请求变量 $_GET               <{$smarty.get}> $_POST                         ...

  4. 二、Smarty中的三种主要变量

    1.从PHP中分配的变量 $smarty -> assign(); 从PHP分配给模板使用的变量:动态变量 2.从配置文件中读取的变量 $smarty配置文件中的内容不是PHP读取,而是就在sm ...

  5. Smarty中一些标签的使用

    Smarty中的标签和php中的标签不一样 foreach标签{foreach   from=$goods(变量名) key='键,不带$' item='值,不带$'}中间的显示内容{/foreach ...

  6. Smarty中模板eq相等 ne、neq不相等, gt大于, lt小于

    eq相等   ne.neq不相等,   gt大于, lt小于 gte.ge大于等于   lte.le 小于等于   not非   mod求模   is [not] div by是否能被某数整除   i ...

  7. smarty中的修饰函数

    smarty中的修饰函数: 对在模板文件中显示的数据变量进行二次修饰. 格式: {ts:变量|函数名:参数1:参数2:参数3...|函数名:参数1:参数2...} 常见的修饰函数: capitaliz ...

  8. smarty模板自定义变量

    一.通过smarty方式调用变量调节器 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &quo ...

  9. Smarty中section的使用

     在smarty的使用过程中,有很多时候需要将一个数组输出到模板中来处理,以下将演示如何将一个索引(index)数组和关联(assocaite)数组在页面中展现出来. 本文中假设有如下一个索引数组 1 ...

随机推荐

  1. NOIP 2015 神奇的幻方

    模拟,注意为偶数的情况 #include<cstdio> #include<cstring> #include<cstdlib> #include<iostr ...

  2. windows串口通信的一个活动图

    1,打开串口的活动图: 2,关闭串口的活动图:

  3. HDU-4669 Mutiples on a circle 环形DP

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4669 题意:给一串数字连乘一个环,求连续的子串中组成的新的数字能被K整除的个数. 首先容易想到用DP来 ...

  4. [置顶] HTML语义和前端架构

    关于语义学 语义学是研究符号和意义之间的关系以及它们表示的内容.在语言学中,则主要是研究符号(例如单词,短语或者语音)在语言中所表达的意义.而在前端开发时,语义学则更多的关注HTML元素,属性以及它的 ...

  5. R 语言画图的基本参数

    R 语言画图的基本参数 点 点的种类 点的种类参数为 pch,每一种符号对应一个数字编号 # 点有25种,为了展示25种点 x = 1:25 y = 1:25 x ## [1] 1 2 3 4 5 6 ...

  6. JSP九大内置对象分析

    JSP九大内置对象分为三类: 1.输入输出对象:out对象.response对象.request对象 2.通信控制对象:pageContext对象.session对象.application对象 3. ...

  7. PJax在jQuery 3.0无法运行问题修复

    PJax在jQuery 3.0无法运行 [现象] 页面报错:Uncaught TypeError: Cannot read property 'push' of undefined [原因] jQue ...

  8. cocos2d-x 触摸偏移

    转自:http://www.cnblogs.com/fjut/archive/2012/04/28/2475693.html //ccTouchBegan必须实现,否则会报错 bool PicScan ...

  9. Codeforces Round #319 (Div. 1) B. Invariance of Tree 构造

    B. Invariance of Tree Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/576/ ...

  10. iOS开发——新特性OC篇&Swift 2.0新特性

    Swift 2.0新特性     转眼间,Swift已经一岁多了,这门新鲜.语法时尚.类型安全.执行速度更快的语言已经渐渐的深入广大开发者的心.我同样也是非常喜爱这门新的编程语言. 今年6月,一年一度 ...