Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.10.x will end 8 November 2021 (12 months).
  • Bug fixes for security issues in 3.10.x will end 9 May 2022 (18 months).
  • PHP version: minimum PHP 7.2.0 Note: minimum PHP version has increased since Moodle 3.8. PHP 7.3.x and 7.4.x are supported too.
<?php

> declare(strict_types=1); namespace GeoIp2\Model; >
/** * Model class for the data returned by GeoIP2 Country web service and database. *
< * The only difference between the City and Insights model classes is which < * fields in each record may be populated. See < * https://dev.maxmind.com/geoip/geoip2/web-services for more details.
> * See https://dev.maxmind.com/geoip/docs/web-services?lang=en for more details.
* * @property-read \GeoIp2\Record\Continent $continent Continent data for the * requested IP address. * @property-read \GeoIp2\Record\Country $country Country data for the requested * IP address. This object represents the country where MaxMind believes the * end user is located. * @property-read \GeoIp2\Record\MaxMind $maxmind Data related to your MaxMind * account. * @property-read \GeoIp2\Record\Country $registeredCountry Registered country * data for the requested IP address. This record represents the country * where the ISP has registered a given IP block and may differ from the * user's country. * @property-read \GeoIp2\Record\RepresentedCountry $representedCountry * Represented country data for the requested IP address. The represented * country is used for things like military bases. It is only present when * the represented country differs from the country. * @property-read \GeoIp2\Record\Traits $traits Data for the traits of the * requested IP address.
> * @property-read array $raw The raw data from the web service.
*/ class Country extends AbstractModel {
> /** protected $continent; > * @var \GeoIp2\Record\Continent protected $country; > */
protected $locales;
> protected $maxmind; > /** protected $registeredCountry; > * @var \GeoIp2\Record\Country protected $representedCountry; > */
protected $traits;
> > /** /** > * @var array<string> * @ignore > */
*
> * @param mixed $raw > /** * @param mixed $locales > * @var \GeoIp2\Record\MaxMind */ > */
public function __construct($raw, $locales = ['en'])
> { > /** parent::__construct($raw); > * @var \GeoIp2\Record\Country > */
$this->continent = new \GeoIp2\Record\Continent(
> $this->get('continent'), > /** $locales > * @var \GeoIp2\Record\RepresentedCountry ); > */
$this->country = new \GeoIp2\Record\Country(
> $this->get('country'), > /** $locales > * @var \GeoIp2\Record\Traits ); > */
< * < * @param mixed $raw < * @param mixed $locales
< public function __construct($raw, $locales = ['en'])
> public function __construct(array $raw, array $locales = ['en'])
); $this->representedCountry = new \GeoIp2\Record\RepresentedCountry( $this->get('represented_country'), $locales ); $this->traits = new \GeoIp2\Record\Traits($this->get('traits')); $this->locales = $locales; } }