[PHP-users 23214]PEAR CalendarのnextWeek()の挙動について
inu dog
inu_dogs @ yahoo.co.jp
2004年 9月 5日 (日) 13:25:09 JST
御世話になっております、 inu_dogs と申します。
表題のとおり
PEAR の Calendar を使っていて疑問点が出たので質問します
。
Calendar_Week という Object に nextWeek というメソッドが
あるのですが、
それが 1902年くらいから以前はきちんとした データを返して
くれません。
具体的には以下のようなソースで
---------- ここから ----------
<?php
require 'Calendar/Week.php';
$y = 1901;
$m = 1;
$d = 1;
$cal = new Calendar_Week($y, $m, $d);
echo
$cal->thisYear()."/".$cal->thisMonth()."/".$cal->thisDay()."\n";
//翌週
$next = $cal->nextWeek('object');
echo
$next->thisYear()."/".$next->thisMonth()."/".$next->thisDay()."\n";
?>
---------- ここまで ----------
$y = 1950;
$m = 1;
$d = 1;
とすると
1950/1/1
1950/1/8
のように 次の週の先頭の日付をかえしてくれます。
(1950/1 のカレンダー)
1月
日 月 火 水 木 金 土
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
しかし
$y = 1901;
$m = 1;
$d = 1;
とすると
1901/1/1
1970/1/1
1901/1/6 を期待しているのですが、1970/1/1 がかえって来て
しまいます。
(1901/1 のカレンダー)
1月
日 月 火 水 木 金 土
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
バグなのか,そういう仕様なのかわからなかったので御存じの
方いらしたら
教えて下さい。 よろしくお願い致します。
環境は 以下のとおりです。
-----------------------------------------------
Calendar 0.5.2 beta
Date 1.4.3 stable
PHP 4.3.6 (cli) (built: May 1 2004 13:50:01)
__________________________________
Do You Yahoo!?
http://bb.yahoo.co.jp/
PHP-users メーリングリストの案内