time_zone_name; } /** * List of time intervals describing business opening hours * * @return BusinessOpeningHoursInterval[]|null */ public function getOpeningHours(): ?array { return $this->opening_hours; } /** * @inheritDoc */ public function toArray(): ?array { return [ 'time_zone_name' => $this->time_zone_name, 'opening_hours' => array_map(fn(BusinessOpeningHoursInterval $item) => $item->toArray(), $this->opening_hours) ]; } /** * @inheritDoc */ public static function fromArray(?array $data): ?BusinessOpeningHours { if($data === null) { return null; } $object = new self(); $object->time_zone_name = $data['time_zone_name']; $object->opening_hours = array_map(fn($item) => BusinessOpeningHoursInterval::fromArray($item), $data['opening_hours']); return $object; } }