pukiwiki改造/dayweek

2019-01-15 (火) 11:18:23 (280d)
お名前:

表記、友瀬のサイトで実施している独自拡張。
他の方にも役に立つと思われるので、一応公開しておきます。

改造目的

カレンダー向け:土日・祝祭日の判定用のメカニズムを追加しています。

なおアルゴリズムとして、こちらのサイトを参考・利用させていただいています。
http://www.pahoo.org/e-soul/webtech/php02/php02-27-01.shtm

改造の概要

  1. pukiwiki\lib の下に、新規の dayweek.php を作成・設置しています。
    • このファイルでは、新規の Dayweekクラスを定義しています。
  2. pukiwiki\lib\pukiwiki.php を編集。
    最初のほうで列挙されているrequireに、dayweek.php を追加しています。
    (LIB_DIR . 'dayweek.php');
  • 上記 dayweek.php では、曜日計算の負荷軽減のため、一度算出したカレンダー状況をキャッシュします:
    • pukiwiki\dayweek 下に「yyyydd.txt」形式でキャッシュファイルを作成しています。
    • キャッシュファイル内は「1行1日」の形式で曜日・祝日情報を記録しています。

クラスメソッド

Dayweek クラスでは、以下のメソッドを提供しています。

  • getCal($year,$month)
    • 指定した年・月の休日情報についての配列を取得します。
      取得できる配列は、以下の構造になっています。
    • $dim[日付]['wday'] :曜日情報。
       0: 日曜 〜 6:土曜
       9: 祝日
    • $dim[日付]['info'] :説明文字列
       例えば「元旦」「文化の日」など。
       祝日でない日では未定義です。

メモ。

2019/1月時点で確定している祝日にしか対応していません。
平成が終わった後、「天皇誕生日」など調整が必要です。

コメント

ご意見などがあれば。


お名前:

お名前: