diegoarreola/country-code-language-list

List of names, languages, and codes of all countries.

dev-main 2023-12-13 23:33 UTC

This package is auto-updated.

Last update: 2024-06-14 00:45:44 UTC


README

lphp

Library with country's name, language, two-language-code and three-language-code


This library contains valid ISO Language Code lower-case two-letter codes as defined by ISO-639, upper-case two-letter codes as defined by ISO-3166.

Example of data

CountryLanguageTwo LetterThree Letter Number (LCID)
MexicoSpanishes-MXes-MEX2058
United StatesEnglish (United States)en-USen-USA4096
ChileSpanishes-CLes-CHL13322

If you want to watch all countries and codes, you can click here

Requeriments

php >= 7.4 and Laravel >= 8.0

How to install

composer require diegoarreola/country-code-language-list

How to use

Use library

use Diegoarreola\CountryCodeLanguageList\CCLL;

Search country information by different methods

$CCLL = new CCLL();

$CCLL->searchByName('Mexico');
/* It returns: */
[
  [
    "name":"Mexico",
    "language":"English",
    "two_letter_code":"en-MX",
    "three_letter_code":"en-MEX",
    "locale_id":"4096"
  ],
  [
    "name":"Mexico",
    "language":"Spanish",
    "two_letter_code":"es-MX",
    "three_letter_code":"es-MEX",
    "locale_id":"2058"
  ]
]

$CCLL->searchByLanguage('English');
/* it returns */
[
  [
    "name" => "Albania", 
    "language" => "English", 
    "two_letter_code" => "en-AL", 
    "three_letter_code" => "en-ALB", 
    "locale_id" => "4096" 
  ], 
  [
    "name" => "American Samoa", 
    "language" => "English", 
    "two_letter_code" => "en-AS", 
    "three_letter_code" => "en-ASM", 
    "locale_id" => "4096"
  ], 
  [
    "name" => "Andorra", 
    "language" => "English", 
    "two_letter_code" => "en-AD", 
    "three_letter_code" => "en-AND", 
    "locale_id" => "4096" 
  ], 
]

$CCLL->searchBy2LC('es-MX');
/* it returns */
[
  [
    "name":"Mexico",
    "language":"Spanish",
    "two_letter_code":"es-MX",
    "three_letter_code":"es-MEX",
    "locale_id":"2058"
  ]
]

$CCLL->searchBy3LC('es-MEX');
/* it returns */
[
  [
    "name":"Mexico",
    "language":"Spanish",
    "two_letter_code":"es-MX",
    "three_letter_code":"es-MEX",
    "locale_id":"2058"
  ]
]

Params

$CCLL->searchByName(); // => English country name (String), could be lowercase or uppercase like 'United Kingdom' or 'united kingdom'.

$CCLL->searchByLanguage(); // => English language (String), could be lowercase or uppercase like 'Spanish' or 'spanish'.

$CCLL->searchBy2LC(); // => English two language code (String), could be lowercase or uppercase like 'es_MX', 'es_mx', 'ES-MX', 'es-mx'. You can use '-' or '_'.

$CCLL->searchBy3LC(); // => Same method before you can use '-' or '_', uppercase or lowercase.

Contributions

You can open a pull request if you consider that change can be useful or it can resolve a bug.

License

Open source software with MIT license.

Author: Diego Alberto Arreola Galván. 🇲🇽