/**
  * @param $quarter
  * @param $year
  * @param string $timeZoneString
  *
  * @return MomentPeriodVo
  * @throws MomentException
  */
 public static function getQuarterPeriod($quarter, $year, $timeZoneString = 'UTC')
 {
     switch ($quarter) {
         case 1:
             $startMonth = 1;
             $endMonth = 3;
             break;
         case 2:
             $startMonth = 4;
             $endMonth = 6;
             break;
         case 3:
             $startMonth = 7;
             $endMonth = 9;
             break;
         case 4:
             $startMonth = 10;
             $endMonth = 12;
             break;
         default:
             throw new MomentException('Invalid quarter. The range of quarters is 1 - 4. You asked for: ' . $quarter);
     }
     // set start
     $start = new Moment();
     $start->setTimezone($timeZoneString)->setYear($year)->setMonth($startMonth)->setDay(1)->setTime(0, 0, 0);
     // set end
     $end = new Moment();
     $end->setTimezone($timeZoneString)->setYear($year)->setMonth($endMonth)->setDay($end->format('t'))->setTime(23, 59, 59);
     // set period vo
     $momentPeriodVo = new MomentPeriodVo();
     return $momentPeriodVo->setInterval($quarter)->setStartDate($start)->setEndDate($end);
 }
示例#2
0
 public function testMoment()
 {
     $data = '1923-12-31 12:30:00';
     $m = new Moment($data);
     $this->assertEquals('1923-12-31T12:30:00+0000', $m->format());
     $data = '1923-12-31T12:30:00.000';
     $m = new Moment($data);
     $this->assertEquals('1923-12-31T12:30:00+0000', $m->format());
     $data = '1923-12-31T12:30:00.123';
     $m = new Moment($data);
     $this->assertEquals('1923-12-31T12:30:00+0000', $m->format());
     $data = '1923-12-31T12:30:00.123+02:00';
     $m = new Moment($data);
     $this->assertEquals('1923-12-31T12:30:00+0200', $m->format());
     $data = '1923-12-31T12:30:00.123+0200';
     $m = new Moment($data);
     $this->assertEquals('1923-12-31T12:30:00+0200', $m->format());
     $data = '1923-12-31T12:30:00.123Z';
     $m = new Moment($data);
     $this->assertEquals('1923-12-31T12:30:00+0000', $m->format());
     $data = '1923-12-31T12:30:00.123Europe/Warsaw';
     $m = new Moment($data);
     $this->assertEquals('1923-12-31T12:30:00+0100', $m->format());
     $data = '1923-12-31T12:30:00.123Europe/Warsaw';
     $m = new Moment($data, 'UTC');
     $this->assertEquals('1923-12-31T12:30:00+0100', $m->format());
     $data = '1923-12-31T12:30:00.123UTC';
     $m = new Moment($data, 'Europe/Warsaw');
     $this->assertEquals('1923-12-31T12:30:00+0000', $m->format());
 }
 public function testCorrectDate()
 {
     $string = '2015-06-14 20:46:22';
     $moment = new Moment($string, 'Europe/Berlin');
     $this->assertEquals('14. Juni', $moment->format('d. F'));
     $string = '2015-03-08T15:14:53-0500';
     $moment = new Moment($string, 'Europe/Berlin');
     $this->assertEquals('08. März', $moment->format('d. F'));
 }
 public function testDayMonthFormat001()
 {
     $string = '2015-06-14 20:46:22';
     $moment = new Moment($string, 'Europe/Berlin');
     $this->assertEquals('14 czerwca', $moment->format('j F'));
     $string = '2015-03-08T15:14:53-0500';
     $moment = new Moment($string, 'Europe/Berlin');
     $this->assertEquals('8 marca', $moment->format('j F'));
 }
 public function testHirbodIssueLocaleDate001()
 {
     // @see: https://github.com/fightbulc/moment.php/issues/50
     $string = '2015-06-14 20:46:22';
     $moment = new Moment($string, 'Europe/Berlin');
     $this->assertEquals('14. Juni', $moment->format('d. F'));
     $string = '2015-03-08T15:14:53-0500';
     $moment = new Moment($string, 'Europe/Berlin');
     $this->assertEquals('08. März', $moment->format('d. F'));
 }
示例#6
0
$m = new Moment();
$response['test01'] = $m->format();
$m = new Moment('2012-05-15T12:30:00', 'CET');
$response['test02'] = $m->add('hours', 2)->format();
$m = new Moment('2012-05-15T12:30:00', 'CET');
$response['test03'] = $m->subtract('days', 7)->subtract('minutes', 15)->format();
$m = new Moment('2012-05-12T15:00:00');
$result = $m->from('2011-09-25T10:00:00');
$response['test04.01'] = $result['seconds'];
$response['test04.02'] = $result['minutes'];
$response['test04.03'] = $result['hours'];
$response['test04.04'] = $result['days'];
$response['test04.05'] = $result['weeks'];
$m = new Moment('2013-02-01T07:00:00');
$result = $m->fromNow();
$response['test05.01'] = $result['seconds'];
$response['test05.02'] = $result['minutes'];
$response['test05.03'] = $result['hours'];
$response['test05.04'] = $result['days'];
$response['test05.05'] = $result['weeks'];
$m = new Moment('2012-04-25T03:00:00', 'CET');
$response['test06.01'] = $m->format();
$response['test06.02'] = $m->setTimezone('UTC')->format();
$m = new Moment('2012-04-25T03:00:00', 'CET');
$response['test07'] = $m->format('l, dS F Y / H:i (e)');
// ############################################
$tmpl = join('', file('test.html'));
foreach ($response as $key => $value) {
    $tmpl = str_replace('{{' . $key . '}}', $value, $tmpl);
}
echo $tmpl;