MCBBS Wiki欢迎您共同参与编辑!在参与编辑之前请先阅读Wiki方针。
如果在编辑的过程中遇到了什么问题,可以去讨论板提问。
为了您能够无阻碍地参与编辑 未验证/绑定过邮箱的用户,请尽快绑定/验证。
MCBBS Wiki GitHub群组已上线!
您可以在回声洞中发表吐槽!
服务器状态监控。点击进入
本站由MCBBS用户自行搭建,与MCBBS及东银河系漫游指南(北京)科技有限公司没有从属关系。点此了解 MCBBS Wiki 不是什么>>
用户:CrablePotion/模板/TimeFilter:修订间差异
跳到导航
跳到搜索
CrablePotion(留言 | 贡献) 无编辑摘要 |
CrablePotion(留言 | 贡献) 小 (// Edit via Wikiplus) |
||
(未显示同一用户的7个中间版本) | |||
第1行: | 第1行: | ||
<onlyinclude>{{ |
|||
⚫ | |||
#vardefine:currentY|{{#time:Y|+{{{UTC|8}}} hours}}}}{{ |
|||
⚫ | |||
+ |
|||
#vardefine:currentD|{{#time:j|+{{{UTC|8}}} hours}}}}{{ |
|||
#vardefine:matchdate|0}}{{ |
|||
+ |
|||
#vardefine:matchrange|0}}{{ |
|||
⚫ | |||
#ifexpr:{{ |
|||
⚫ | |||
#ifeq:{{#var:currentY}}|{{{年|}}}|1|0}} + {{#ifeq:{{#var:currentM}}|{{{月|}}}|1|0}} + {{#ifeq:{{#var:currentD}}|{{{日|}}}|1|0}} |
|||
| {{{返回}}} |
|||
⚫ | |||
⚫ | |||
| {{#vardefine:matchdate|1}} |
|||
| {{#vardefine:matchdate|{{{非|0}}}}} |
|||
⚫ | |||
⚫ | |||
{{{末|2147483648}}} - {{{始|0}}} > {{{末|2147483648}}} - {{#expr:{{#time:U|now|+{{{UTC|8}}} hours}}}} |
|||
| {{#vardefine:matchrange|1}} |
|||
| {{#vardefine:matchdate|{{{非|0}}}}} |
|||
}}{{ |
|||
#switch:{{{范围|0}}} |
|||
| 0 = {{#ifexpr:{{#var:matchdate}}|{{{返回|}}}}} |
|||
| 1 = {{#ifexpr:{{#var:matchrange}}|{{{返回|}}}}} |
|||
| 2 = {{#ifexpr:{{#var:matchdate}} - {{#var:matchrange}} = 0||{{{返回|}}}}} |
|||
}}</onlyinclude>{{ |
|||
doc|content= |
|||
这个模板用于判断现在的时间是否与规则匹配,如果匹配则返回指定内容。 |
|||
== 用法 == |
|||
该模板有三种匹配方式: |
|||
# 匹配确切时间,即参数<code>范围=0</code>(默认),且<code>年</code>、<code>月</code>、<code>日</code>任意一个不为空。如果<code>月=3</code>,则会匹配3月的每一天;如果<code><nowiki>月=3|日=1</nowiki></code>,则会匹配每年的3月1日。 |
|||
# 匹配特定范围内的时间,即参数<code>范围=1</code>,且<code>始</code>、<code>末</code>任意一个不为空。需要注意的是,无论是<code>始</code>还是<code>末</code>,输入的都需要是unix时间戳。如果<code>始=946656000</code>(对应时间2000-01-01 00:00:00),则会匹配自2000-01-01 00:00:00之后的时间;如果<code>始=946656000</code>且<code>末=1704038400</code>(2024-01-01 00:00:00),则会匹配从2000-01-01 00:00:00开始,到2024-01-01 00:00:00结束的时间。参数<code>始</code>和<code>末</code>必须使得<code>始</code><=<code>末</code>。 |
|||
# 混合模式,即参数<code>范围=2</code>,且同时满足1与2的条件:<code>年</code>、<code>月</code>、<code>日</code>任意一个不为空,<code>始</code>、<code>末</code>任意一个不为空。如果<code>始=946656000</code>,<code>末=1704038400</code>,<code>月=3</code>,则会匹配从2000年至2024年中每个3月的每一天。 |
|||
举例: |
|||
<code><nowiki>{{用户:CrablePotion/模板/TimeFilter|UTC=0|范围=0|年=2024|返回=true}}</nowiki></code> 在2024年(世界协调时)时会返回true,反之不返回。<br>效果如下:{{用户:CrablePotion/模板/TimeFilter|UTC=0|范围=0|年=2024|返回=true}}(没有返回就说明现在不是2024年) |
|||
}}<templatedata> |
|||
{ |
|||
"params": { |
|||
"UTC": { |
|||
"label": "时区", |
|||
"type": "string", |
|||
"description": "当前时区的UTC值", |
|||
"default": "8 (北京时间)" |
|||
}, |
|||
"年": { |
|||
"label": "年", |
|||
"type": "string", |
|||
"description": "匹配的年份" |
|||
}, |
|||
"月": { |
|||
"label": "月", |
|||
"type": "string", |
|||
"description": "匹配的月份" |
|||
}, |
|||
"日": { |
|||
"label": "日", |
|||
"type": "string", |
|||
"description": "匹配的日期" |
|||
}, |
|||
"始": { |
|||
"label": "开始的时间点", |
|||
"type": "string", |
|||
"description": "开始的unix时间戳" |
|||
}, |
|||
"末": { |
|||
"label": "末尾的时间点", |
|||
"type": "string", |
|||
"description": "末尾的unix时间戳" |
|||
}, |
|||
"非": { |
|||
"label": "逻辑非", |
|||
"type": "string", |
|||
"description": "在不满足时返回" |
|||
}, |
|||
"范围": { |
|||
"label": "是否启用范围", |
|||
"type": "string", |
|||
"description" : "0-不启用;1-仅范围;2-混合", |
|||
"default": "0 (不启用)" |
|||
}, |
|||
"返回": { |
|||
"label": "返回内容", |
|||
"type": "string", |
|||
"description":"判断为真时返回的内容,可作为wikitext解析", |
|||
"required": true |
|||
} |
|||
}, |
|||
"description": "判断当前时间是否与规则匹配" |
|||
}</templatedata> |
2024年4月6日 (六) 19:53的最新版本
文档 [编辑]
这个文档是内联文档。
这个模板用于判断现在的时间是否与规则匹配,如果匹配则返回指定内容。
用法
该模板有三种匹配方式:
- 匹配确切时间,即参数
范围=0
(默认),且年
、月
、日
任意一个不为空。如果月=3
,则会匹配3月的每一天;如果月=3|日=1
,则会匹配每年的3月1日。 - 匹配特定范围内的时间,即参数
范围=1
,且始
、末
任意一个不为空。需要注意的是,无论是始
还是末
,输入的都需要是unix时间戳。如果始=946656000
(对应时间2000-01-01 00:00:00),则会匹配自2000-01-01 00:00:00之后的时间;如果始=946656000
且末=1704038400
(2024-01-01 00:00:00),则会匹配从2000-01-01 00:00:00开始,到2024-01-01 00:00:00结束的时间。参数始
和末
必须使得始
<=末
。 - 混合模式,即参数
范围=2
,且同时满足1与2的条件:年
、月
、日
任意一个不为空,始
、末
任意一个不为空。如果始=946656000
,末=1704038400
,月=3
,则会匹配从2000年至2024年中每个3月的每一天。
举例:
{{用户:CrablePotion/模板/TimeFilter|UTC=0|范围=0|年=2024|返回=true}}
在2024年(世界协调时)时会返回true,反之不返回。
效果如下:true(没有返回就说明现在不是2024年)
判断当前时间是否与规则匹配
参数 | 描述 | 类型 | 状态 | |
---|---|---|---|---|
时区 | UTC | 当前时区的UTC值
| 字符串 | 可选 |
年 | 年 | 匹配的年份 | 字符串 | 可选 |
月 | 月 | 匹配的月份 | 字符串 | 可选 |
日 | 日 | 匹配的日期 | 字符串 | 可选 |
开始的时间点 | 始 | 开始的unix时间戳 | 字符串 | 可选 |
末尾的时间点 | 末 | 末尾的unix时间戳 | 字符串 | 可选 |
逻辑非 | 非 | 在不满足时返回 | 字符串 | 可选 |
是否启用范围 | 范围 | 0-不启用;1-仅范围;2-混合
| 字符串 | 可选 |
返回内容 | 返回 | 判断为真时返回的内容,可作为wikitext解析 | 字符串 | 必需 |