12) { throw new InvalidArgumentException( sprintf('Invalid month given. Expected 1-12, received "%s".', $monthNumber) ); } $this->month = str_pad($month, 2, '0', STR_PAD_LEFT); } public function getMonth(): string { return $this->month; } public function getMonthNumber(): int { return (int) $this->month; } public function getBillableDuration(): int { return $this->billableDuration; } public function setBillableDuration(int $billableDuration): void { $this->billableDuration = $billableDuration; } public function getBillableRate(): float { return $this->billableRate; } public function setBillableRate(float $billableRate): void { $this->billableRate = $billableRate; } }