Glossary

Internationalisation (i18n) and Localisation (l10n)

i18n (internationalization, 18 letters between i and n) is designing an application to support different languages and regions without changing the code. l10n (localization) is adapting for a specific region: translations, date/number/currency formats.

What i18n includes

l10n in practice

// PHP — via ICU format (recommended)
$msg = (new MessageFormatter('en', '{count, plural,
  one   {# file}
  other {# files}
}'))->format(['count' => $n]);

Common mistakes