%PDF- %PDF-
Direktori : /home/vacivi36/ava/lib/maxmind/GeoIp2/Record/ |
Current File : /home/vacivi36/ava/lib/maxmind/GeoIp2/Record/AbstractPlaceRecord.php |
<?php declare(strict_types=1); namespace GeoIp2\Record; abstract class AbstractPlaceRecord extends AbstractRecord { private $locales; /** * @ignore */ public function __construct(?array $record, array $locales = ['en']) { $this->locales = $locales; parent::__construct($record); } /** * @ignore */ public function __get(string $attr) { if ($attr === 'name') { return $this->name(); } return parent::__get($attr); } /** * @ignore */ public function __isset(string $attr): bool { if ($attr === 'name') { return $this->firstSetNameLocale() !== null; } return parent::__isset($attr); } private function name(): ?string { $locale = $this->firstSetNameLocale(); return $locale === null ? null : $this->names[$locale]; } private function firstSetNameLocale(): ?string { foreach ($this->locales as $locale) { if (isset($this->names[$locale])) { return $locale; } } return null; } }