smarty有Switch机箱吗?

Posted

技术标签:

【中文标题】smarty有Switch机箱吗?【英文标题】:Is there a Switch case in smarty? 【发布时间】:2011-12-26 22:13:36 【问题描述】:

我正在使用 Smarty 开发一个网站。我在网上搜索了是否可以将 switch 案例与 Smarty 一起使用。但我找不到任何有用的链接。

Smarty 可以使用 Switch case 吗?如果有怎么办?

【问题讨论】:

安装这个插件绝对可以:pynej.blogspot.co.uk/2010/02/switch-statment-for-smarty-3.html @JohnMagnolia 请添加您的评论作为答案 【参考方案1】:

您可以在此处找到文档: http://www.smarty.net/documentation

不,这是不可能的(没有插件)。但是您可以在 php 中使用它并分配您的结果。或者在 smarty 中,你可以用不同的方式使用 if 条件。

【讨论】:

【参考方案2】:

是的,有一个额外的插件:http://pynej.blogspot.co.uk/2010/02/switch-statment-for-smarty-3.html

switch $debugItem.type
   case 1
   case "invalid_field"
      // Case checks for string and numbers.
   /case
   case $postError
   case $getError|cat:"_ajax"|lower
      // Case checks can also use variables and modifiers.
      break
   default
      // Default case is supported.
/switch

【讨论】:

【参考方案3】:

如果你不喜欢或者可以安装插件,你也可以只使用一个简单的 if / elsif 语句:

if $case1_as_condition
   Case 1
elseif $case2_as_condition
   Case 2, etc
else
   Default
/if

http://www.smarty.net/docsv2/en/language.function.if

【讨论】:

以上是关于smarty有Switch机箱吗?的主要内容,如果未能解决你的问题,请参考以下文章

切换机箱有多个参数

在 Switch 案例中标记字符串

switch语句里不需要必须有break吗

c语言的switch语句和java的switch语句有啥不同吗?

switch语句default前没有break,会输出default的信息吗?

switch采集器绿巨能有延迟吗