我们在《Jsnpp框架模板概述》这篇教程里面初步介绍了Jsnpp框架的模板,大家已经知道Jsnpp的模板标签长什么样,这一篇我们来详细介绍Jsnpp框架模板的模板变量。
先来介绍几个概念,一个是模板标签,一个是模板变量,还有一个是模板语法。
Jsnpp的模板里面,模板标签是一个总称,包括了模板变量和模板语法。
模板变量是可以直接输出内容的模板标签。
模板语法是可以用于控制执行流程的模板标签。
这一篇我们先来详细介绍模板变量。
我们在前面的教程里面介绍过这样的模板标签:
{$name}
这是一个最简单的模板变量。我们也介绍过其组成有三部分:一个是大括号,另一个是“$”符号,还有一个是标签名称“name”。这里的大括号是开始符和结束符,是Jsnpp模板标签必须的边界符号。实际的模板变量就是“$name”,这里的“name”是模板变量的名称,也可以不是“name”。
现在您知道模板变量的格式了吧,就是这样的:“$变量名”。
我再举个例子,看下面的模板变量:
{$title}
我观察一下,两个模板变量,其区别仅仅是变量的名称更改了。
模板变量要能够在前端的HTML页面里面可以使用,要先在PHP代码里面对这个模板变量赋值,Jsnpp里面给模板标签赋值的是“assign”。我们在前面的示例里面看到过这样的代码:
$this->view->assign('webroot', $this->route->rootUrl())->display();
上面的代码就是系统的默认首页输出代码。其中的“assign”语句是给模板变量“webroot”赋值,其值是使用“$this->route->rootUrl()”获得的网站根地址。有了这个赋值语句后,我们就可以在模板文件的HTML代码里面嵌入“{$webroot}”模板标签了。