html5中文学习网

您的位置: 首页 > 网络编程 > PHP编程 » 正文

如何在smarty模板中定义变量与常量_php教程

[ ] 已经帮助:人解决问题

   定义常量非常的简单ZHYHTML5中文学习网 - HTML5先行者学习网

  方法是:ZHYHTML5中文学习网 - HTML5先行者学习网

 代码如下  

{$smarty.const.你定义的常量名}ZHYHTML5中文学习网 - HTML5先行者学习网

  定义变量如何做呢?ZHYHTML5中文学习网 - HTML5先行者学习网

  smarty中定义变量 .ZHYHTML5中文学习网 - HTML5先行者学习网

  {*下面的这一段相当于在模板内部定义一个变量UserName*}ZHYHTML5中文学习网 - HTML5先行者学习网

 代码如下  

{assign var="UserName" value="myz"}ZHYHTML5中文学习网 - HTML5先行者学习网

  这里将显示模板内部定义的一个变量:UserName = {$UserName}ZHYHTML5中文学习网 - HTML5先行者学习网

  例子ZHYHTML5中文学习网 - HTML5先行者学习网

 代码如下  

<*assign var="i" value=0*> ZHYHTML5中文学习网 - HTML5先行者学习网
<*foreach from=$r_article item=row*> ZHYHTML5中文学习网 - HTML5先行者学习网
   <div class="scont stecont<*$i*>"> ZHYHTML5中文学习网 - HTML5先行者学习网
      <ul> ZHYHTML5中文学习网 - HTML5先行者学习网
         <*foreach from=$row item=r*> ZHYHTML5中文学习网 - HTML5先行者学习网
            <li> ZHYHTML5中文学习网 - HTML5先行者学习网
            <*$r['title']*><a href="article.php?aid=<*$r['id']*>" target="_blank">【在线阅读】</a> <a href="<*$r['attachment']*>" target="_blank">【下载】</a> ZHYHTML5中文学习网 - HTML5先行者学习网
            </li> ZHYHTML5中文学习网 - HTML5先行者学习网
         <*/foreach*> ZHYHTML5中文学习网 - HTML5先行者学习网
      </ul> ZHYHTML5中文学习网 - HTML5先行者学习网
   </div> ZHYHTML5中文学习网 - HTML5先行者学习网
   <*$i = $i + 1*> ZHYHTML5中文学习网 - HTML5先行者学习网
<*/foreach*>ZHYHTML5中文学习网 - HTML5先行者学习网

  说明ZHYHTML5中文学习网 - HTML5先行者学习网

  1、模板中定义变量,例子如下:<{assign var="i" value=0}> (说明:i是整型,所以value=0,不需要加双引号,否则会被判定为字符串类型)。ZHYHTML5中文学习网 - HTML5先行者学习网

  由于foreach没有像for那样的计数器,所以在这里自定义了一个计数器,在循环中计数;也可以不在模板页定义变量,在include该模板的页面时,传一个变量i进来也行。ZHYHTML5中文学习网 - HTML5先行者学习网

  2、关于smarty中的加运算,试了一下,smarty中不支持“++”(包括变量前++、变量后++)、“+=”的方式,所以增加1还是用“$i=$i+1“的方式。ZHYHTML5中文学习网 - HTML5先行者学习网

  再看一个实例子ZHYHTML5中文学习网 - HTML5先行者学习网

  代码如下:ZHYHTML5中文学习网 - HTML5先行者学习网

 代码如下  

<!–{math equation=x x=0 assign=i}–>ZHYHTML5中文学习网 - HTML5先行者学习网
<!–{section name=smartyVar loop=10 }–>ZHYHTML5中文学习网 - HTML5先行者学习网
<!–{math equation=$i+1 assign=i}–>ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
<!–{$i}–>ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
<!–{/section}–>ZHYHTML5中文学习网 - HTML5先行者学习网

输出效果:ZHYHTML5中文学习网 - HTML5先行者学习网

<br />ZHYHTML5中文学习网 - HTML5先行者学习网
1ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网

<br />ZHYHTML5中文学习网 - HTML5先行者学习网
2ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
 ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
3ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
 ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
4ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
 ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
5ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
 ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
6ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
 ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
7ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
 ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
8ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
 ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网
9ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网

<br />ZHYHTML5中文学习网 - HTML5先行者学习网
10ZHYHTML5中文学习网 - HTML5先行者学习网
<br />ZHYHTML5中文学习网 - HTML5先行者学习网

  注意:如果$i的初始值不是0,例如1,”math equation=x x=1 assign=i”还可以写成”math equation=1 assign=i”,省略其中的x变量。是0时不可以省,否则会出现警告信息ZHYHTML5中文学习网 - HTML5先行者学习网

  Warning: Smarty error: math: missing equation parameterZHYHTML5中文学习网 - HTML5先行者学习网

  虽然在模板中再为变量赋值不是一个好主意,但真的需要时可以按上面的方法试一下

(责任编辑:)
推荐书籍
推荐资讯
关于HTML5先行者 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助