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}}}}

参见[编辑]