smarty模板技术

smarty简介:

smarty是php领域流行的一种模板技术,免费,其核心就是一个类(smarty类)。

我们的主要目标就是学习怎么使用这个类。

smarty的特点:

速度快(因为第二次执行的时候使用第一次执行时生成的编译文件)

缓存技术(正是因为缓存技术,使得smarty模板技术不太适合那些对于实时性更新要求比较高的,比如股票信息)

插件技术(正是因为插件技术,使得smarty可以被扩展)

编译型(访问一个页面一次之后会生成一个编译文件,第二次再来访问这个页面的时候,就会访问这个编译文件,从而提高访问速度);

$smarty->assign('变量名',数据)

smarty内部变量:

$smarty.now:获取当前时间,是一个时间戳(整数)

$smarty.get:获取到$_GET数据,$smarty.get.xx相当于$_GET['xx']

$smarty.post:获取到$_POST数据,  $smarty.post.xx相当于 $_POST[‘xx’]

$smarty.cookies:获取到$_COOKIE数据,  $smarty.cookies.xx相当于 $_COOKIE[‘xx’]

$smarty.session:获取到$_SESSION数据,  $smarty.session.xx相当于 $_SESSION[‘xx’]

$smarty.const:  获取到php程序中的常量数据

$smarty.config:获取到配置数据

内建函数:

就是写在模板文件中,用于实现一定功能的smarty语句或语法。

模板文件中,有时候不是简单的“输出数据”,而可能还会需要一些其他的功能。内建函数就起这个作用。

跟前面的变量对比来说:

变量(数据)只是单纯的输出,

但:

内建函数并不是输出数据,而是在模板中实现某种功能,

,比如:

载入配置文件,实现if判断,实现循环逻辑。。。。

常用内置函数有:

{config_load}:载入配置文件。

{include}:载入(引入)其他模板文件到当前模板文件。

{if}:用于实现if语句。

{for}:用于实现循环。

{foreach}:用于对数组进行遍历。

{while}:用于实现循环。

{literal}:用于标识一段代码排除在smarty的处理逻辑中——即不被smarty处理!通常就是css代码和js代码中的大括号,跟smarty的大括号有冲突,用此来解决。

literal函数的使用:

对于解决smarty与跟css(和js)语法的可能冲突,还有一个方法:

修改smarty的“边界符”;

$smarty->left_delimiter = “<{“;

$smarty->right_delimiter = “}>“;

则所有的模板中的smarty边界符都要按上述来做,比如:

<{$v1}>

<{if  $age > 18 }>

。。。。。

<{/if}>

自定义函数:

也是函数,只是不作为smarty里模板文件中的核心函数,它常常用于构建并输出一些html代码内容。

smarty常量:

template_dir:表示“模板文件所在目录”;

template_dir:表示“模板文件所在目录;

left_delimiter:表示smarty语法的左边界。

left_delimiter:表示smarty语法的左边界。

smarty常用方法:

assign():变量赋值

display():加载模板

setTemplateDir():设置模板目录

setCompileDir():设置编译目录

getTemplateDir():获取模板目录

getCompileDir():获取编译目录

 

~~~~~~~~~~~~~~~

 

转载于:https://www.cnblogs.com/bjphp/p/8564188.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值