smarty对空白变量的处理

阅读量:3165

发布时间:2015-09-25 17:08:55


smarty在使用数组循环输出的时候需要注意判断数组是否为空,是否是多维数组

后台传递变量的时候需要先进行变量的定义,规定是一个数组才能进行判断下标是否为0

不是数组的时候判断下标是否为0的时候,显示的结果是1

后台需要初始化:

if($info == "" || $info == null){
    $info = array();
}

前台对结果判断是否需要循环输出结果:

{if $info|@count eq 0}

{else}

    {foreach $info as $article from=$info item=item name=cat_key}
       

{$article.nav_title}

 
    {foreachelse}
       

生活

 
    {/foreach}

{/if} 

smarty在使用neq的时候需要注意……

也可以使用默认值的方式处理空白变量

{$myTitle|default:'no title'}

可以在smarty中打印数组

{$var|@print_r}

在导出数据库中数据的时候,需要对数据判断,为空的之后要将变量变成数组,不然不是数组输出的之后

$content = $newsobj->findAll_one_nav_class($Id);
if($nav == ""){
    $nav = array();
}

输出结果是1 也不能用

{$var|@print_r}
{foreach $nav as $article}
{foreachelse}
    当前没有文章
{/foreach}









当前没有评论