Help:自订变量
跳到导航
跳到搜索
本扩展用于定义变量。
var与cgi的区别在于使用var定义的变量仅在本页或其所在模板有效,但var(理论上)可以定义任意数量的变量,而cgi则只有一个。
使用自订的变量可以简化语法、削减代码的长度及减少服务器负荷(谁在乎呢)。可配合解析器函数使用。
变量赋值[编辑]
#vardefine[编辑]
{{#vardefine:(变量名)|(数值)}}
将数值赋给指定的(已存在的或新定义的)变量。
- 范例:
{{#vardefine:iconwidth|25}}
使 iconwidth = 25
#vardefineecho[编辑]
{{#vardefineecho:(变量名)|(数值)}}
功能与 #vardefine相同,但在赋值的同时会输出该变量。
- 范例: 使 iconwidth = {{#vardefineecho:iconwidth|25}}
输出变量值 (#var)[编辑]
变量的值通过该语法输出:
{{#var:(变量名)}}
如果变量未被定义,将返回空字符串而不返回错误信息。
定义在变量未定义或无效的情况下的默认值:
{{#var:(变量名)|(默认值)}}
这等同于:
{{#if:{{#var:(变量名)}}|{{#var:(变量名)}}|(默认值)}}
但它更为简洁,便于操作。变量的值可以在解析器函数中使用。
#varexists[编辑]
{{#varexists:(变量名)}}
若变量已被定义则返回1(即便该值是一个无效的字符串),若变量未被定义则返回空字符串。
#var_final[编辑]
该语法将输出一个变量在整个页面的最终值。当然,该值是在本页所有wiki代码被解释完毕后输出的,因此该语法不能与其他语法套用。例如:
{{#var_final:(变量名)|(默认值)}}
若变量在整个页面中都未被定义或为空字符串,则返回默认值。默认值将在代码插入的地方输出,无论其被需要与否。
范例[编辑]
计算x = 2*a + b:
{{#vardefine:x|{{#expr:2*{{#var:a}}+{{#var:b}}}} }}
将n的值加1:
{{#vardefine:n|{{#expr:{{#var:n}}+1}}}}