【UCHome二次开发】UCHome模板语法…

UCHome二次开发时,了解模板的语法是必须的,下面对其中的语法做一一介绍。至于模板的解析过程请参考《UCHome二次开发之模板解析》。

1、调用其他模板

1<!--{template footer}-->

说明:将以模板header.htm来替换此处的代码

2、调用头像

模板代码:

1<!--{avatar($value[uid],small)}-->

解析后的代码:

1<?php echo avatar($value[uid],small); ?>

3、调用广告

模板代码:

1<!--{ad/header}-->

解析后的代码:

 
1<?php adshow('header'); ?>

4、调用时间

模板代码:

1<!--{date('Y-m-d H:i', $value[dateline], 1)}-->

解析后的代码:

1<?php echo sgmdate('Y-m-d H:i', $value[dateline], 1); ?>

5、输出PHP代码

模板代码:

 
1<!--{eval echo formhash();}-->

解析后的代码:

1<?php echo formhash(); ?>

说明:<!–{eval和}–>之间的是需要执行的PHP代码,要求语句完整。

6、调用变量

模板代码:

1<a href="space.php?uid=$value[uid]">{$_SN[$value[uid]]}</a>

解析后的代码:

1<a href="space.php?uid=<?=$value['uid']?>"><?=$_SN[$value['uid']]?></a>

说明:{和}之间的是需要输出的变量。

7、选择输出逻辑

模板代码:

1<!--{if empty($mtag['ismember']) &amp;&amp; $mtag['joinperm'] < 2}-->
2    <li><a href="cp.php?ac=mtag&amp;op=join&amp;tagid=$mtag[tagid]" id="a_mtag_join_$mtag[tagid]" onclick="ajaxmenu(event, this.id, 99999)">加入群组</a></li>
3<!--{elseif $mtag['allowpost']}-->
4    <li><a href="cp.php?ac=thread&amp;tagid=$mtag[tagid]">发起话题</a></li>
5<!--{/if}-->

解析后的代码:

1<?php if(empty($mtag['ismember']) &amp;&amp; $mtag['joinperm'] < 2) { ?>
2    <li><a href="cp.php?ac=mtag&amp;op=join&amp;tagid=<?=$mtag['tagid']?>" id="a_mtag_join_<?=$mtag['tagid']?>" οnclick="ajaxmenu(event, this.id, 99999)">加入群组</a></li>
3<?php } elseif($mtag['allowpost']) { ?>
4    <li><a href="cp.php?ac=thread&amp;tagid=<?=$mtag['tagid']?>">发起话题</a></li>
5<?php } ?>

说明:当然这里可以没有elseif,其语法有点类似VB,需要有结尾符。

8、循环输出逻辑

模板代码 1:

01<!--{loop $list $key $value}-->
02<tr <!--{if $key%2==1}--><!--{/if}-->>
03<td>
04    <!--{if $value[displayorder]}--> [顶] <!--{/if}-->
05    <!--{if $value[digest]}--> [精] <!--{/if}-->
06    <a href="space.php?uid=$value[uid]&amp;do=thread&amp;id=$value[tid]">$value[subject]</a></td>
07<td><a href="space.php?uid=$value[uid]">{$_SN[$value[uid]]}</a><br>$value[replynum]/$value[viewnum]</td>
08<td><a href="space.php?uid=$value[lastauthorid]" title="{$_SN[$value[lastauthorid]]}">{$_SN[$value[lastauthorid]]}</a><br><!--{date('m-d H:i',$value[lastpost],1)}--></td>
09</tr>
10<!--{/loop}-->

解析后的代码 1:

01<?php if(is_array($list)) { foreach($list as $key => $value) { ?>
02<tr <?php if($key%2==1) { ?><?php } ?>>
03<td>
04    <?php if($value['displayorder']) { ?> [顶] <?php } ?>
05    <?php if($value['digest']) { ?> [精] <?php } ?>
06    <a href="space.php?uid=<?=$value['uid']?>&amp;do=thread&amp;id=<?=$value['tid']?>"><?=$value['subject']?></a></td>
07<td><a href="space.php?uid=<?=$value['uid']?>"><?=$_SN[$value['uid']]?></a><br><?=$value['replynum']?>/<?=$value['viewnum']?></td>
08<td><a href="space.php?uid=<?=$value['lastauthorid']?>" title="<?=$_SN[$value['lastauthorid']]?>"><?=$_SN[$value['lastauthorid']]?></a><br><?php echo sgmdate('m-d H:i',$value[lastpost],1); ?></td>
09</tr>
10<?php } } ?>

说明:loop后跟三个参数时,第一个参数是用于循环的数组,第二个和第三个参数分别是对数组中每一项循环时项的键名和值。

模板代码 2:

1<!--{loop $memberlist $value}-->
2<li>
3<div><a href="space.php?uid=$value[uid]"><img src="<!--{avatar($value[uid],small)}-->" alt="{$_SN[$value[uid]]}" /></a></div>
4<p><a href="space.php?uid=$value[uid]">{$_SN[$value[uid]]}</a></p></li>
5<!--{/loop}-->

解析后的代码 2:

1<?php if(is_array($memberlist)) { foreach($memberlist as $value) { ?>
2<li>
3<div><a href="space.php?uid=<?=$value['uid']?>"><img src="<?php echo avatar($value[uid],small); ?>" alt="<?=$_SN[$value['uid']]?>" /></a></div>
4<p><a href="space.php?uid=<?=$value['uid']?>"><?=$_SN[$value['uid']]?></a></p></li>
5<?php } } ?>

说明:loop后跟两个参数时,第一个参数是用于循环的数组,第二个参数是对数组中每一项循环时项的值。

注:以上所有实例皆摘录自UCHome 1.5默认模板。对比一下模板代码和解析后的代码便可知语法的效果,所以文中不多解释。个人自习结果,如有不对之处欢迎拍砖。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值