这个模板会根据指定的日期和时区,换算出新时区下的日期,并按指定的格式输出wiki文本。
虽然没有硬性规定,但是建议在使用这个模板的页面的序章中添加{{TimeZone}}。
{{TimeZone/convert | year = <!-- 年 --> | mon = <!-- 月 --> | day = <!-- 日 --> | hour = <!-- 时 --> | min = <!-- 分 --> | sec = <!-- 秒 --> |o_timezone = <!-- 原来的时区 --> |c_timezone = <!-- 现在的时区 --> |<!-- 格式化字符串 --> }}
{{TimeZone/convert | y = <!-- 年 --> | m = <!-- 月 --> | d = <!-- 日 --> | h = <!-- 时 --> | i = <!-- 分 --> | s = <!-- 秒 --> |o_tz = <!-- 原来的时区 --> |c_tz = <!-- 现在的时区 --> |<!-- 格式化字符串 --> }}
year
、y
:原时区下的年份,默认值为在原时区下当前时间的年份。mon
、m
:原时区下的月份,默认值为在原时区下当前时间的月份。day
、d
:原时区下的日期,默认值为在原时区下当前时间的日期。hour
、h
:原时区下的小时数,默认值为在原时区下当前时间的小时数。min
、i
:原时区下的分钟数,默认值为在原时区下当前时间的分钟数。sec
、s
:原时区下的秒数,默认值为在原时区下当前时间的秒数。o_timezone
、o_tz
:原来的时区,默认值为用户当前所在的时区。c_timezone
、c_tz
:现在的时区,默认值为用户当前所在的时区。{{{1}}}
:第一个匿名参数,指示如何格式化新日期。了解模板的实现原理有助于对模板的理解和运用。 以下说明了模板的实现以及工作原理:
{{#var:timezone}}
。
{{#var:timezone}}
的值为使用{{TimeZone}}时指定的时间参数,若并未指定时间参数,则使用[[模块:TimeZone]]计算得到的用户当前时区。o_timezone
、o_tz
:
c_timezone
、c_tz
:
{{#var:timezone}}
的值;{{#var:timezone}}
的值为空(【不建议】当未添加{{TimeZone}}的情况下),则使用[[模块:TimeZone]]计算得到的用户当前时区。year
、y
:若两个参数的值均为空,则使用在原时区下当前时间的年份。mon
、m
:若两个参数的值均为空,则使用在原时区下当前时间的月份。day
、d
:若两个参数的值均为空,则使用在原时区下当前时间的日期。hour
、h
:若两个参数的值均为空,则使用在原时区下当前时间的小时数。min
、i
:若两个参数的值均为空,则使用在原时区下当前时间的分钟数。sec
、s
:若两个参数的值均为空,则使用在原时区下当前时间的秒数。{{{1}}}
格式化新日期。
目前{{TimeZone/convert}}共支持42个格式化参数:
示例时间:2024年11月07日 (星期四) 下午 16:10:08
格式化参数 | 说明 | 示例输出
|
---|---|---|
%(y) | 不包含纪元的年份。如果不包含纪元的年份小于10,则显示不具有前导零的年份。 | 24 |
%y | 不包含纪元的年份。如果不包含纪元的年份小于10,则显示不具有前导零的年份。%(y) 的简略写法。 |
24 |
%(yy) | 不包含纪元的年份。如果不包含纪元的年份小于10,则显示具有前导零的年份。 | 24 |
%(yyyy) | 包括纪元的四位数的年份。 | 2024 |
%(gg) | 时期或纪元。如果要设置格式的日期不具有关联的时期或纪元字符串,则忽略该模式。 | 20 |
%(M) | 月份数字。一位数的月份没有前导零。 | 11 |
%M | 月份数字。一位数的月份没有前导零。%(M) 的简略写法。 |
11 |
%(MM) | 月份数字。一位数的月份有一个前导零。 | 11 |
%(MMM) | 月份的缩写名称。 | 十一 |
%(MMMM) | 月份的缩写名称。 | 十一月 |
%(D) | 年中的某一天。 | 311 |
%D | 年中的某一天。%(D) 的简略写法。 |
311 |
%(DD) | 这一年共有多少天。 | 366 |
%(d) | 月中的某一天。一位数的日期没有前导零。 | 7 |
%d | 月中的某一天。一位数的日期没有前导零。%(d) 的简略写法。 |
7 |
%(dd) | 月中的某一天。一位数的日期有一个前导零。 | 07 |
%(w) | 周中的某一天。 | 5 |
%w | 周中的某一天。%(w) 的简略写法。 |
5 |
%(ww) | 周中某天的缩写名称。 | 四 |
%(www) | 周中某天的缩写名称。 | 星期四 |
%(h) | 12 小时制的小时。一位数的小时数没有前导零。 | 4 |
%h | 12 小时制的小时。一位数的小时数没有前导零。%(h) 的简略写法。 |
4 |
%(hh) | 12 小时制的小时。一位数的小时数有一个前导零。 | 04 |
%(H) | 24 小时制的小时。一位数的小时数没有前导零。 | 16 |
%H | 24 小时制的小时。一位数的小时数没有前导零。%(H) 的简略写法。 |
16 |
%(HH) | 24 小时制的小时。一位数的小时数有一个前导零。 | 16 |
%(m) | 分钟。一位数的分钟数没有前导零。 | 10 |
%m | 分钟。一位数的分钟数没有前导零。%(m) 的简略写法。 |
10 |
%(mm) | 分钟。一位数的分钟数有一个前导零。 | 10 |
%(s) | 秒。一位数的秒数没有前导零。 | 8 |
%s | 秒。一位数的秒数没有前导零。%(s) 的简略写法。 |
8 |
%(ss) | 秒。一位数的秒数有一个前导零。 | 08 |
%(sss) | Unix时间戳(Unix timestamp)。从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数。 | 1730995808 |
%(t) | 一天中时间段的更加详细的提示信息。 | 下午 |
%t | 一天中时间段的更加详细的提示信息。%(t) 的简略写法。 |
下午 |
%(tt) | 一天中时间段的更加详细的提示信息。 | 下午 |
%(z) | 时区偏移量(“+”或“-”后面仅跟小时)。一位数的小时数没有前导零。例如,太平洋标准时间是“-8”。 | +8 |
%z | 时区偏移量(“+”或“-”后面仅跟小时)。一位数的小时数没有前导零。例如,太平洋标准时间是“-8”。%(z) 的简略写法。 |
+8 |
%(zz) | 时区偏移量(“+”或“-”后面仅跟小时)。一位数的小时数有前导零。例如,太平洋标准时间是“-08”。 | +08 |
%(zzz) | 完整时区偏移量(“+”或“-”后面跟有小时和分钟)。一位数的小时数和分钟数有前导零。例如,太平洋标准时间是“-08:00”。 | +08:00 |
%(%) | 表示字符“%”。 | % |
%% | 表示字符“%”。%(%) 的简略写法。 |
% |
{{TimeZone|+8}} 现在是北京时间{{TimeZone/convert|%(yyyy)年%(MM)月%(dd)日 %(HH)时%(mm)分%(ss)秒}}。<br/> 当北京时间{{TimeZone/convert|y=2018|m=12|d=15|h=0|i=0|s=0|%(yyyy)年%(MM)月%(dd)日 %(HH)时%(mm)分%(ss)秒(UTC+8)}}时,太平洋时间为{{TimeZone/convert|Y=2018|m=12|d=15|H=0|i=0|s=0|%(yyyy)年%(MM)月%(dd)日 %(HH)时%(mm)分%(ss)秒(UTC-8)|c_tz=-8}}
现在是北京时间2024年11月07日 16时10分08秒。
当北京时间2018年12月15日 00时00分00秒(UTC+8)时,太平洋时间为2024年12月15日 00时00分00秒(UTC-8)
这个模板与{{TimeZone}}配合使用可以自动转换页面上的所有非特别注明的时间。
|