protected function parse(): void
    {
        list('year' => $year, 'month' => $month, 'day' => $day) = self::validate($this->birthday);
        $this->birthday = sprintf('%d-%02d-%02d', $year, $month, $day); // normalize the date
        $this->age = self::calculateAge($year, $month, $day);
        $this->constellation = self::parseConstellation($month, $day);
    }
protected function parse(): void
    {
        list('year' => $year, 'month' => $month, 'day' => $day) = self::validate($this->birthday);
        $this->birthday = sprintf('%d-%02d-%02d', $year, $month, $day); // normalize the date
        $this->age = self::calculateAge($year, $month, $day);
        $this->constellation = self::parseConstellation($month, $day);
    }
protected function parse ( ) : void { list ( 'year' => $ year , 'month' => $ month , 'day' => $ day ) = self :: validate ( $ this -> birthday ) ; $ this -> birthday = sprintf ( '%d-%02d-%02d' , $ year , $ month , $ day ) ; // normalize the date $ this -> age = self :: calculateAge ( $ year , $ month , $ day ) ; $ this -> constellation = self :: parseConstellation ( $ month , $ day ) ; }
Parse the birthday

@throws \InvalidArgumentException
@throws \OutOfRangeException
Parse the birthday