if循环的使用帮助 **if的作用:**if循环在模板制作过程中,有无比强大的效用,在很多模板页都会使用,活学活用if标签,能让页面更个性,更专业。
if循环可用于任何模板页,但不建议多用,if循环会增加服务端压力,影响页面打开速度,如果语法不严谨甚至可能导致进程池崩溃。 以下介绍中
a,b,c代表数字,例如可以是[content:i],[list:id],{zzz:sid}等数字字段
aaa,bbb代表字符串,例如是[content:title][about:desc]等文本字段 基本用法,数字类型
常用文本对比,前后字段都要加双引号!
- {if:"aaa"="bbb"}
- 相同结果
- {else}
- 不相同结果
- {end if}
复制代码自zzzphp1.6.6之后新增,and、or等方法。
名称 | 标签1 | 标签2 | 例子 | 等于 | = | == | {if:[sort:id]=5}... {end if} | 不等于 | <> | != | {if:[sort:id]!=5}... {end if} | 大于/大于等于 | > | >= | {if:[sort:id]>5}... {end if} | 小于/小于等于 | < | <= | {if:[sort:id]<5}... {end if} | 或 | or | || | {if:[sort:id]=5or[sort:id]=6}... {end if} | 与 | and | && | {if:[sort:id]!=5and[sort:id]!=6}... {end if} | 余数 | mod | % | {if:[content:i]%4=0} 整除 {end if} | 空 | isnul() | ""="" | {if:isnul("[content:zauthor]")} 是空 {end if} | 数字 | ifnum() | | {if:ifnum("[content:zprice]")} 是数字 {end if} | 汉字 | ifch() | | {if:ifch("[content:zsource]")} 是汉字{end if} | 字数 | lenstr() | | {if:lenstr("[content:title]")>10} 大于10 {end if} | 包含 | ifstrin() | | {if:ifstrin("[content:title]","手机")}... {end if} |
奇偶数,求余数mod,4个为一行 - {if:[content:i] mod 4=0}
- 结果
- {else}
- 结果
- {end if}
复制代码 具体应用:判断是否会有登录,显示不同结果。
- {if:{zzz:userid}>0}
- 已登录结果
- {else}
- 未登录结果
- {end if}
复制代码判断是用户级别,会员级别在后台会员组处查看。
- {if:{zzz:gid}>0}
- 会员结果
- {else}
- 未登录结果
- {end if}
复制代码新闻分3列显示,一般常用于首页(非常不建议使用,页面执行时间增加1秒)
此示例中循环中使用判断,等于判断了60次
- {zzz:content type=news num=30 order=order}
- {if:[content:i] mod 10=1}<li>{end if}
- <a href="[content:link]"><img src="[content:pic]"></a>
- {if:[content:i] mod 10= 0}</li>{end if}
- {/zzz:content}
复制代码嵌套判断(不建议多用标签判断,占用服务器资源较多,香港空间更要注意) - {if:a=b}
- 相同结果...
- {if1:x=?}...{else1}...{end if1}
- {else}
- 不相同结果...
- {if1:y=?}
- {if2:z=?}...{end if2}
- {else1}
- {end if1}
- {end if}
复制代码 |