capture的作用是:

   捕获模板输出的数据并将其存储到一个变量,而不是把它们输出到页面,任何在 {capture name=”foo”}和{/capture}之间的数据将被存储到变量$foo中,该变量由name属性指定,在模板中通过 $smarty.capture.foo 访问该变量,{capture}必须成对出现,即以{/capture}作为结尾,该函数不能嵌套使用,capture有两个属性:name和assignassign;

  实例:

  第一种情况:使用name属性

  {capture name=’color’}red{/capture}
  {$smarty.capture.color} 

  第二种情况:使用assign,捕获内容到变量

  {capture assign=’foo’}blue{/capture}
  {$foo}

  第三种情况:使用append,捕获内容到数组

  {capture append=’arr’}abs{/capture}
  {capture append=’arr’}zks{/capture}
  {foreach $arr as $val}{$val}<br>{/foreach}