Example #1
0
 /**
  * 経過%
  * @dataProvider daysPassedpercentProvider
  */
 public function testGetDaysPassedPercent($timestamp, $expected)
 {
     $allow = 1 / (365 * 86400) * 100 / 2;
     // 平年 0.5 秒分の誤差まで許容
     $timeZoneUTC = new \DateTimeZone('UTC');
     $target = new MyDateTime("@{$timestamp}", $timeZoneUTC);
     $this->assertEquals($expected, $target->getDaysPassedPercent(), '', $allow);
 }
 /**
  * 日付をフォーマットして返す
  *
  * @return string 例: 今日 15/1/20 は第04週目の水曜日です。今年の5.2%が経過しました。
  */
 public static function formatDateTime(DateTime $datetime)
 {
     return sprintf('今日 %1$s は第%2$d週目の%3$s曜日です。今年の%4$.1f%%が経過しました。', $datetime->format('Y/m/d'), $datetime->format('W'), $datetime->getWDayName(), $datetime->getDaysPassedPercent());
 }