ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
## if循环的使用帮助 **if的作用:**if循环在模板制作过程中,有无比强大的效用,在很多模板页都会使用,活学活用if标签,能让页面更个性,更专业。 if循环可用于任何模板页,但不建议多用,if循环会增加服务端压力,影响页面打开速度,如果语法不严谨甚至可能导致进程池崩溃。 以下介绍中 a,b,c代表数字,例如可以是[content:i],[list:id],{zzz:sid}等数字字段 aaa,bbb代表字符串,例如是[content:title][about:desc]等文本字段 > 基本用法,数字类型 ~~~ {if:a=b} {else} {end if} ~~~ > 常用文本对比,前后字段都要加双引号! ~~~ {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} ~~~