Jsnpp框架模板语法之判断语句
发布时间: 2021年5月12日 下午8:46 作者: Jsnpp 访问量: 67

我们在前面的教程里面学习了Jsnpp框架的模板相关内容,知道了模板变量以及复合变量的使用。有了模板变量以及复合变量,我们可以做的工作仅仅是在模板里面可以输出变量对应的内容。

在实际的工作中,我们制作模板经常会遇到需要判断的地方,之前学过的模板变量以及复合变量是没法实现判断的,所以我们要学习新的模板语法,这也是这一篇要介绍的内容。

if

“if”语句是编程中常用的判断语法,在Jsnpp框架的模板语法里面也可以使用“if”语句来实现判断。我们先来看一个示例代码,如下:

{if($name == ‘mike’)}
<div>ok</div>
{endif}

以上代码里面一共三行,第一行是if语句的条件判断,判断的条件是:模板变量“$name”是否等于“mike”,如果等于“mike”的话,那么输出第二行的HTML代码,也就是输出“ok”。第三行代码是if语句的结束标签,if语句的结束标签是“endif”,并且需要用大括号围起来。

在“if”语句里面,我们还可以使用“else”,看下面的代码:

{if($name == ‘mike’)}
<div>ok</div>
{else}
<div>error</div>
{endif}
上面的代码也是一个“if”语句,跟前面的“if”语句的区别在于多了“else”。整个语句的含义是,如果模板变量“$name”等于“mike”的话,那么输出“ok”,否则输出“error”。

我们发现,实际上Jsnpp模板里面的if语句跟我们平常使用的if语句是一样的,区别仅仅是Jsnpp模板里面的if语句需要用大括号围起来。

empty

“empty”也是用于判断的模板语句,其作用是判断某个模板变量是否为空。我们先看一个示例代码:

{empty $title}
<div>...</div>
{endempty}

上面代码就是“empty”语句的用法,我们来解释一下:第一行是判断模板变量“$title”是否为空,如果为空的话,则输出第二行省略号表示的内容。第三行代码是“empty”语句的结束,这个结束是“endempty”,并且用大括号围起来。

“empty”语句也可以使用“else”语法,看下面的例子:

{empty $title}
<div>...</div>
{else}
<div>{$title}</div>
{endempty}

上面的“empty”语句多了“else”分支,整个语句的意思是,如果模板变量“$title”为空的话,那么输出省略号表示的内容,否则输出模板变量“$title”的内容。

notempty

“notempty”也是Jsnpp框架的模板里面用于判断的语句,我们前面学过“empty”,实际上“notempty”的判断正好跟“empty”相反。“notempty”是用于判断不为空的。看下面的示例代码:

{notempty $title}
<div>{$title}</div>
{endnotempty}

上面的语句就是“notempty”的用法,意思是如果模板变量“$title”不为空的话,那么输出模板变量“$title”的内容。第三行的结束标签是“endnotempty”。

跟“empty”语句一样,“notempty”语句也是可以使用“else”的,由于使用方法一样,这里不再写示例代码了。

以上就是Jsnpp框架的模板语法里面支持的三个判断语句,用法是比较简单的,需要注意的是结束标签,这个结束标签是有规律的,就是“end”加上对应语句的那个名称,例如:“if”语句的话,就是“endif”。
出错
提交成功!
评论已经提交。
我们已经收到您的反馈!
/index/like.html
/index/dislike.html
/index/postpassword.html
Jsnpp
自豪地采用 Jpwrt