This library, based on conversio library, is aimed to convert every existing language code to any format you want. No matter which format the input language code is.
The available output formats are:
-
name
The international (often english) name of the language
-
native
The language name written in native representation/s
-
iso639-1
The ISO 639-1 (two-letters code) language representation
-
iso639-2/t
The ISO 639-2/T (three-letters code for terminology applications) language representation
-
iso639-2/b
The ISO 639-2/B (three-letters code, for bibliographic applications) language representation
-
iso639-3
The ISO 639-3 (same as ISO 639-2/T except that for the macrolanguages) language representation
Currently 184 languages are fully supported.
First of all you need to create the conversion adapter and its options class.
use Conversio\Conversion;
use Conversio\Adapter\LanguageCode;
use Conversio\Adapter\Options\LanguageCode;
// ...
$adapter = new LanguageCode();
$options = new LanguageCodeOptions();
Then, you can pass it to the Conversion
class constructor (from conversio library):
$converter = new Conversion($adapter);
$converter->setAdapterOptions($options);
Or, compactly:
$converter = new Conversion(['adapter' => $adapter, 'options' => $options]);
Finally we need to specify the desired output format (see above the supported formats) of the conversion and perform it.
$options->setOutput('native');
// ISO 639-1 => NATIVE
$converter->filter('it'); // italiano
Which ouputs, in this case italiano
.
Have fun, try other language codes (e.g., vie
, tam
).
// ISO 639-2/T => NATIVE
$converter->filter('vie'); // tiếng việt
$converter->filter('tam'); // தமிழ்
// ISO 639-3 => NATIVE
$converter->filter('yid + 2'); // ייִדיש
// ISO 639-3 => NAME
$options->setOutput('name');
$converter->filter('vie'); // vietnamese
$converter->filter('tam'); // tamil
$converter->filter('yid + 2'); // yiddish
Add leodido/langcode-conv
to your composer.json
.
{
"require": {
"leodido/langcode-conv": "v0.3.0"
}
}
- Language codes and schemes reference
- The ISO 639-1 standard
- The ISO 639-2 standard
- The ISO 639-3 standard
- List of ISO 639-1 codes
- List of ISO 639-2 codes
- List of ISO 639-3 codes