Download the PHP package tiny-blocks/country without Composer
On this page you can find all versions of the php package tiny-blocks/country. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download tiny-blocks/country
More information about tiny-blocks/country
Files in tiny-blocks/country
Package country
Short Description Provides an ISO 3166-1 country value object for PHP, with Alpha-2, Alpha-3, numeric, and IANA timezone resolution.
License MIT
Homepage https://github.com/tiny-blocks/country
Informations about the package country
Country
- Overview
- Installation
- How to use
- Alpha2Code
- Alpha3Code
- Country
- Timezones
- License
- Contributing
Overview
Provides an ISO-3166 country value object for PHP, carrying Alpha-2 and Alpha-3 codes along with all IANA timezones associated with the country. Supports construction from either alpha code variant and automatic conversion between them. Built on top of the tiny-blocks value-object contract to guarantee immutability and structural equality.
Installation
How to use
The library exposes country codes according to ISO-3166 specifications. It is possible to create a representation of a country that groups the codes, its name, and all its IANA timezones.
Alpha2Code
A two-letter code that represents a country name, recommended as the general purpose code.
Alpha3Code
A three-letter code that represents a country name, which is usually more closely related to the country name.
Country
A Country instance can be created using either an Alpha-2 or Alpha-3 code, along with an optional country name.
There are two main methods to create a Country object: from (which accepts objects) and fromString (which accepts
strings).
Each Country automatically carries all its IANA timezones.
Creating from objects
You can create a Country instance using the from method by providing an Alpha2Code or Alpha3Code object.
Optionally, you can pass the name of the country. If no name is provided, the default is the English version of the
country name.
If you want to specify a custom name:
Creating from string
Alternatively, you can create a Country instance using the fromString method, which accepts an Alpha-2 or
Alpha-3 code as a string.
You can also pass a custom country name:
Timezones
Every Country includes an immutable CountryTimezones collection, built from the IANA timezone database (via PHP's
ICU integration).
Getting all timezones
Returns all Timezone objects for the country:
Getting the default timezone
Returns the primary timezone (first in the IANA list). Falls back to UTC for territories without an assigned timezone:
Finding a timezone by identifier with UTC fallback
Searches for a specific IANA identifier within the country's timezones. Returns UTC if not found.
Checking if a timezone belongs to the country
License
Country is licensed under MIT.
Contributing
Please follow the contributing guidelines to contribute to the project.