本館粉絲專頁

使用者:Digipunk/BD:修訂版本之間的差異

分享此網頁到Facebook
分享此網頁到Plurk
分享此網頁到百度搜藏
分享此網頁到Twitter
分享此網頁到Del.icio.us
最近作者:Digipunk 2020年2月21日 (星期五)10:18
台灣棒球維基館
跳轉到: 導覽搜尋
備註
 
第1行: 第1行:
 
<INCLUDEONLY>{{#if:{{{1|}}}
 
<INCLUDEONLY>{{#if:{{{1|}}}
 
     | {{#iferror:{{#timel:"[["Y"年]]"m"月"d"日"|{{{1}}}}}{{#if:{{{2|}}}
 
     | {{#iferror:{{#timel:"[["Y"年]]"m"月"d"日"|{{{1}}}}}{{#if:{{{2|}}}
             |{{#if:1|{{{3|}}}}}*逝世日期:{{#ifeq:{{{2}}}|不詳|不詳|{{#timel:"[["Y"年]]"m"月"d"日"|{{{2}}}}}({{#expr:floor(({{#timel:Ymd|{{{2}}}}}-{{#timel:Ymd|{{{1}}}}})/10000)}}歲)}}
+
             |{{#if:1|{{{3|}}}}}*逝世日期:{{#ifeq:{{{2}}}|不詳|不詳|{{#timel:"[["Y"年]]"m"月"d"日"|{{{2}}}}}({{#expr:{{#ifeq:{{{虛歲}}}|1|ceil|floor}}(({{#timel:Ymd|{{{2}}}}}-{{#timel:Ymd|{{{1}}}}})/10000)}}歲)}}
        |({{#expr:floor(({{#timel:Ymd}}-{{#timel:Ymd|{{{1}}}}})/10000)}}歲)
+
        |({{#expr:{{#ifeq:{{{虛歲}}}|1|ceil|floor}}(({{#timel:Ymd}}-{{#timel:Ymd|{{{1}}}}})/10000)}}歲)
 
           }}
 
           }}
 
         | 日期格式不正確
 
         | 日期格式不正確
第30行: 第30行:
 
| = <SPAN STYLE="color:#F4F"><選填欄位,內縮,即 wiki 表示法的 ":" 字元,若顯示逝世日期時有需要的話></SPAN>
 
| = <SPAN STYLE="color:#F4F"><選填欄位,內縮,即 wiki 表示法的 ":" 字元,若顯示逝世日期時有需要的話></SPAN>
 
|-
 
|-
|STYLE="color:#CCC"|6||COLSPAN="2"|<B>}}</B>
+
|STYLE="color:#CCC"|6||COLSPAN="2"|&nbsp;
 +
|-
 +
|STYLE="color:#CCC"|7||COLSPAN="2"|    <SPAN STYLE="color:#88F">&lt;!-- 【具名參數】 --&gt;</SPAN>
 +
|-
 +
|STYLE="color:#CCC"|8||STYLE="width:30px"|    &#124; <SPAN STYLE="color:#0FF">虛歲</SPAN>
 +
| = <SPAN STYLE="color:#F4F"><選填欄位,預設值 0。設為 1 則歲數無條件進位,通常用於逝世年齡></SPAN>
 +
|-
 +
|STYLE="color:#CCC"|9||COLSPAN="2"|<B>}}</B>
 
|}
 
|}
 
</DIV>
 
</DIV>
第64行: 第71行:
 
|-
 
|-
 
| 徐生明 ||
 
| 徐生明 ||
*出生日期:{{BD | 1958/09/11 | 2013/08/24}}
+
*出生日期:{{BD | 1958/09/11 | 2013/08/24 | 虛歲=1}}
| <tt><nowiki>*出生日期:{{BD | 1958/09/11 | 2013/08/24}}</nowiki></tt>
+
| <tt><nowiki>*出生日期:{{BD | 1958/09/11 | 2013/08/24 | 虛歲=1}}</nowiki></tt>
 
|}
 
|}
  

2020年2月21日 (五) 10:18的最新修訂版本

目次

[編輯] Birthday

顯示生日年齡,適用於球員資料頁面,例如:
  • 球員姓名:陳金鋒
  • 出生日期:1977年10月28日(42歲)

[編輯] 語法

1 {{BD
2 <!-- 【順序參數】 -->
3 | 1 = <生日,任何合格的日期格表示法皆可>
4 | 2 = <選填欄位,逝日>
5 | 3 = <選填欄位,內縮,即 wiki 表示法的 ":" 字元,若顯示逝世日期時有需要的話>
6  
7 <!-- 【具名參數】 -->
8 | 虛歲 = <選填欄位,預設值 0。設為 1 則歲數無條件進位,通常用於逝世年齡>
9 }}

[編輯] 生日、逝日

  • 兩參數皆可填入任何合格的日期表示法,以下寫法都合法且同義:
  • 1991/06/11
  • 1991/6/11
  • 1991-06-11
  • 1991-6-11
  • 11 Jun 1991
  • 11 Jun, 1991
  • 11th Jun 1991
  • 11th Jun, 1991
  • 11st Jun 1991
  • 11st Jun, 1991
  • Jun 11 1991
  • Jun 11, 1991
  • Jun 11th 1991
  • Jun 11th, 1991
  • 1991 Jun 11
  • 1991 11 Jun

[編輯] 逝日

  • 若逝世日期不詳,此參數可填入「不詳」。

[編輯] 範例

人名 範例 語法
陳金鋒
  • 出生日期:1977年10月28日(42歲)
*出生日期:{{BD | 1977-10-28}}
徐生明
  • 出生日期:1958年09月11日
  • 逝世日期:2013年08月24日(55歲)
*出生日期:{{BD | 1958/09/11 | 2013/08/24 | 虛歲=1}}

[編輯] 備註

  • 主要是我每次查詢球員資料時,腦袋裡經常需要轉換年齡;如果可以的話,不如讓它自動計算。
  • 此模板運作模式單純,取用目前年月日,與指定的年月日做比較而已,年齡以足歲為準。
  • 運作邏輯如下:
function BD($birthday, $show_age = 1) {
  list($y, $m, $d) = explode('/', str_replace(' ', '', $birthday));
  $str = "[[$y年]]$m月$d日";
  if ($show_age == 1) {
    list($Y, $M, $D) = explode('-', date('Y-n-j'));
    $age = $Y - $y;
    if ($m > $M || ($m == $M && $d > $D)) $age--;  // 不足歲
    $str .= "($age 歲)";
  }
  echo $str;
}
  • 以上為最初的笨邏輯,2017-09-29 改成底下這樣:
function BD($birthday, $show_age = 1) {
  $tm = strtotime($birthday);
  $str = date('[[Y年]]m月d日', $tm);
  if ($show_age == 1) {
    $str .= '(' . floor((date('Ymd') - date('Ymd', $tm)) / 10000) . '歲)';
  }
  echo $str;
}

[編輯] 開發記錄

  • [2016-07-13] 建立模板。
  • [2017-09-29] 改用更單純的邏輯計算年齡。
  • [2018-03-29] 新增「逝世日期」。