HOME>WEBプログラム覚書>PEAR::Calenderを利用して特定の日付からn日間表示

PEAR::Calenderを利用して特定の日付からn日間表示

ループごとにnewしてたんだけどsetTimestamp()を使えばいいことにようやく気がついた。

サンプルコード

PHP

  1. <?php
  2. require_once('Calendar/Day.php');
  3.  
  4. // forのたびにnewする
  5. $year = 2009; $month = 12; $day = 28;
  6. $xday = new Calendar_Day($year, $month, $day);
  7.  
  8. for ($i=1; $i<11; $i++) {
  9.     printf('%s/%02d/%02d<br />', $xday->thisYear(), $xday->thisMonth(), $xday->thisDay());
  10.     $xday = new Calendar_Day($year, $month, $day + $i);
  11.     $xday->adjust();
  12. }
  13.  
  14. echo '<hr />';
  15.  
  16. // setTimestamp()ですっきり
  17. $year = 2009; $month = 12; $day = 28;
  18. $oneday_minites = 24 * 60 * 60;
  19. $xday = new Calendar_Day($year, $month, $day);
  20.  
  21. for ($i=0; $i<10; $i++) {
  22.     printf('%s/%02d/%02d<br />', $xday->thisYear(), $xday->thisMonth(), $xday->thisDay());
  23.     $xday->setTimestamp($xday->getTimestamp() + $oneday_minites);
  24. }
  25. ?>

実行結果

2009/12/28
2009/12/29
2009/12/30
2009/12/31
2010/01/01
2010/01/02
2010/01/03
2010/01/04
2010/01/05
2010/01/06

2009/12/28
2009/12/29
2009/12/30
2009/12/31
2010/01/01
2010/01/02
2010/01/03
2010/01/04
2010/01/05
2010/01/06
参照サイト
投稿日 2009年12月21日 01:50
カテゴリ PHP
タグ PEAR | サンプルコード
トラックバック URL http://www.kantenna.com/cgi-bin/mt504/mt-tb.cgi/1184

コメント

コメントする
Name
Email Address
URL