public function LocaleTranslation::getStringTranslation in Drupal 10
Same name and namespace in other branches
- 8 core/modules/locale/src/LocaleTranslation.php \Drupal\locale\LocaleTranslation::getStringTranslation()
- 9 core/modules/locale/src/LocaleTranslation.php \Drupal\locale\LocaleTranslation::getStringTranslation()
Retrieves English string to given language.
Parameters
string $langcode: Language code to translate to.
string $string: The source string.
string $context: The string context.
Return value
string|false Translated string if there is a translation, FALSE if not.
Overrides TranslatorInterface::getStringTranslation
File
- core/
modules/ locale/ src/ LocaleTranslation.php, line 111
Class
- LocaleTranslation
- String translator using the locale module.
Namespace
Drupal\localeCode
public function getStringTranslation($langcode, $string, $context) {
// If the language is not suitable for locale module, just return.
if ($langcode == LanguageInterface::LANGCODE_SYSTEM || $langcode == 'en' && !$this
->canTranslateEnglish()) {
return FALSE;
}
// Strings are cached by langcode, context and roles, using instances of the
// LocaleLookup class to handle string lookup and caching.
if (!isset($this->translations[$langcode][$context])) {
$this->translations[$langcode][$context] = new LocaleLookup($langcode, $context, $this->storage, $this->cache, $this->lock, $this->configFactory, $this->languageManager, $this->requestStack);
}
$translation = $this->translations[$langcode][$context]
->get($string);
return $translation === TRUE ? FALSE : $translation;
}