The package does a lot. Everything from geology and topology, to states, currencies, and time zones.
As I was reviewing it I tried to think of some common use cases that almost every app needs and here are a few examples:
Generate a list of Countries
Need a list of all the countries in the world? It’s as simple as calling:Countries::all()->pluck('name.common');
[
"Aruba",
"Afghanistan",
"Angola",
"Anguilla",
"Ă…land Islands",
....
Generate a list of States
In a lot of registration forms, you need to allow people to pick their state.Countries::where('name.common', 'United States')
->first()
->states
->sortBy('name')
->pluck('name', 'postal')
This gives you a result of the states that can then be used in a select list:{
"AL": "Alabama",
"AK": "Alaska",
"AZ": "Arizona",
"AR": "Arkansas",
"CA": "California",
....
Get the timezone for a State
Another typical pattern is figuring out a timezone. If you already have the users country and state it’s now super easy:return Countries::where('name.common', 'United States')->first()->timezone->NC;
Returns:America/New_York
Get a countries currency
Need to get information on a specific countries currency? With this package it’s very easy:Countries::where('name.common', 'United States')->first()->currency;
Which returns:[{
"alternativeSigns": [],
"ISO4217Code": "USD",
"ISO4217Number": "840",
"sign": "$",
"subunits": 100,
"title": "U.S. dollar",
....
These examples are just the basics of what can be done. It supports the following countries, states, and currencies:- Countries
- name (common and native)
- currency
- languages
- states
- timezone
- flags (sprites, flag icons, svg)
- tld
- multiple ISO codes
- calling code
- capital
- alternate spellings
- region & sub region
- translations (country name translated to some other languages)
- latitude and logitude
- borders (countries) – you can hydrate those borders (like relatioships)
- area
- topology
- geometry
- Currencies
- sign
- ISO codes
- title
- subunits
- usage (dates)
- States
- adm codes
- name & alt name
- type (state, city, province, canton, department, district, etc.)
- latitude & longitude
- language
- (and many more
No comments:
Post a Comment