20.smarty

常用视图引擎的介绍

视图引擎的作用

帮助mvc中view更方便的开发

好的视图引擎

  • 基于该引擎开发出的模板更贴近标准的html
  • 语法简单易懂
  • 良好的缓存机制
  • 拓展性良好
  • 网络资源多

常见视图引擎

smarty phplib

什么是smarty

php模板引擎,实现代码分离

smarty官网

smarty的引入、配置与实例制作

smarty的引入与实例化

smarty配置
$smarty->left_delimiter = '{';//左定界符
$smarty->right_delimiter = '}';//右定界符
$smarty->template_dir = 'tpl';//html模板的地址
$smarty->compile_dir = 'template_c';//模板编译生成的文件
$smarty->cache_dir = 'cache';//缓存
以下是开启缓存的另外两个配置。因为通常不用smarty的缓存机制,所以只做了解
$smarty->caching = true;//开启缓存
$smarty->cache_lifetime = 120;//缓存时间
创建目录 /template_c /cache
两个常用的方法
$smarty->assign('key','value');
模板变量赋值
$smarty->display('tpl');
展示模板
变量调节器
  • 首字母大写
    {$key|capitalize}
  • 字符串连接
    {$key|cat:"xxx"}
  • 日期格式化
    {$key|date_format}
  • 为未赋值或为空的变量指定默认值
    {$key|default:'this is null'}
  • 转码 escape 用于html转码,在没有转码的变量上转换单引号,十六进制转码,十六进制美化,或者javascript转码,默认是html转码
    {$key|escape:"url"}
  • 大小写
    {$key|upper}
    {$key|lower}

其他函数,参见smarty手册

条件判断
  • eq=gt>lt<neq!=
{if $key eq 1}

{elseif $name eq 2}

{else}

{/if}
  • 循环
{foreach from=$key item=vo}

{foreachelse}

{/foreach}
  • 引入
{include file="路径" }
函数
{"Y-m-d"|date:$key}
{'d'|str_replace:"xxx":$key}

你可能感兴趣的:(20.smarty)