code: protected function createDateRanges()
  	{
  		if (!empty($this->arrRange))
  		{
  			return;
  		}
  
  		$intYear = date('Y', $this->strDate);
  		$intMonth = date('m', $this->strDate);
  		$intDay = date('d', $this->strDate);
  
  		$this->arrRange['day']['begin'] = mktime(0, 0, 0, $intMonth, $intDay, $intYear);
  		$this->arrRange['day']['end'] = mktime(23, 59, 59, $intMonth, $intDay, $intYear);
  		$this->arrRange['month']['begin'] = mktime(0, 0, 0, $intMonth, 1, $intYear);
  		$this->arrRange['month']['end'] = mktime(23, 59, 59, $intMonth, date('t', $this->strDate), $intYear);
  		$this->arrRange['year']['begin'] = mktime(0, 0, 0, 1, 1, $intYear);
  		$this->arrRange['year']['end'] = mktime(23, 59, 59, 12, 31, $intYear);
  	}
docs: Create the date ranges