年齢を自動計算するプラグイン

バージョン1.5
投稿者asa?
状態完了
投稿日2014-10-10 (金) 16:30:02

メッセージ

メンバー表を作っています。 ページを開いた時の年齢を自動計算し表示してほしい。

コメント

  • 途中でおくってしまいました。|名前|生年月日|年齢| となっており、前のカラムのデータで自動計算してほしい -- asa? 2014-10-10 (金) 16:32:03
  • 希望とはちょっと違うけど
    <?php
    // PukiWiki - Yet another WikiWikiWeb clone.
    // $Id: age.inc.php,v 0.00
    //
    // USAGE : &age(birthday_string);
    // 
    
    function plugin_age_inline()
    {
      global $vars;
    
      $args = func_get_args();
      if (func_num_args() > 2) return '&age(date);';
      $date_str = $args[0];
      if ($date_str == '') return '&age(date);';
      $date = strtotime($date_str);
      if ($date === -1) return '&age(date): Invalid date string;';
      $date -= ZONETIME;
    
      $today=time();
      $past=($today-$date);
      $age=intval($past/(60*60*24*365.25));
    
      return($age);
    }
    ?>
    • &age(誕生日文字列);
      で満年齢を返します。
    • 誕生日文字列はPHP関数:strtotimeが理解できるもの。 例:1995-3-15 のような YYYY-MM-DD
    • 簡易的に365.25日を1年としていること。
    • strtotimeの仕様上の問題で1970年1月1日以前を受け付けない場合があります。(詳細はPHPのマニュアル参照)
    この方が利用できる場合が多いでしょう と思います。newプラグインの設定で対処できそうな気もしますが -- 2014-10-11 (土) 03:46:03
  • そのパターンなら、昔の残骸が残ってる。自作プラグイン/age.inc.php自作プラグイン/kazoe.inc.php -- 2014-10-11 (土) 18:07:53
  • だったら $datetime_rules か $str_rules に
    '^\|(.*)\|(.*)\|age\|$' => "|$1|$2|&age($2);|",
    を加えてやれば
    |名前|生年月日|age|
    と書けば実現できるね -- 2014-10-11 (土) 19:32:01
  • みなさまありがとうございました。実現できました。 -- asa? 2014-10-14 (火) 09:10:55
  • 実現できたとのことなので 状態を「完了」にしておきますね -- 2014-10-14 (火) 11:27:05

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-10-14 (火) 11:27:18
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u8. HTML convert time: 0.159 sec.

OSDN