예제 #1
0
 public function formateDateByMoon($start, $end)
 {
     $return = array();
     $st = date("Y-m-d", $start);
     $et = date("Y-m-d", $end);
     $firstDateOfStartMonth = date("Y-m", $start) . "-1";
     $firstDateOfEndMonth = date("Y-m", $end) . "-1";
     $lastDateOfEndMonth = date("Y-m-d", strtotime("+1 month -1 day {$firstDateOfEndMonth}"));
     $dates = DateTimeUtil::getDiffDate($firstDateOfStartMonth, $lastDateOfEndMonth);
     $moons = $dates["y"] * 12 + $dates["m"] + 1;
     if ($moons == 1) {
         $return[$st . ":" . $et] = $st . "至" . $et;
         return $return;
     }
     for ($i = 0; $i < $moons; $i++) {
         $sd = date("Y-m", strtotime("+{$i} month {$st}")) . "-1";
         $ed = date("Y-m-d", strtotime("+1 month -1 day {$sd}"));
         if ($i == 0) {
             $return[$st . ":" . $ed] = $st . "至" . $ed;
         } elseif ($moons <= $i + 1) {
             $return[$sd . ":" . $et] = $sd . "至" . $et;
         } else {
             $return[$sd . ":" . $ed] = date("Y-m", strtotime("+{$i} month {$st}"));
         }
     }
     return $return;
 }
예제 #2
0
 public function formateDateByYear($start, $end)
 {
     $return = array();
     $st = date("Y-m-d", $start);
     $et = date("Y-m-d", $end);
     $dates = DateTimeUtil::getDiffDate($st, $et);
     $years = $dates["y"];
     if (0 < $dates["d"] + $dates["m"] * 12) {
         $years += 1;
     }
     for ($i = 0; $i < $years; $i++) {
         $sd = date("Y-m", strtotime("+{$i} year {$st}")) . "-1";
         $ed = date("Y-m-d", strtotime("+1 year -1 day {$sd}"));
         $return[$sd . ":" . $ed] = date("Y", strtotime("+{$i} year {$st}")) . "年报";
     }
     return $return;
 }