public function ConfigurableLanguageManager::getCurrentLanguage in Drupal 9
Same name and namespace in other branches
- 8 core/modules/language/src/ConfigurableLanguageManager.php \Drupal\language\ConfigurableLanguageManager::getCurrentLanguage()
- 10 core/modules/language/src/ConfigurableLanguageManager.php \Drupal\language\ConfigurableLanguageManager::getCurrentLanguage()
Returns the current language for the given type.
Parameters
string $type: (optional) The language type; e.g., the interface or the content language. Defaults to \Drupal\Core\Language\LanguageInterface::TYPE_INTERFACE.
Return value
\Drupal\Core\Language\LanguageInterface The current language object for the given type of language.
Overrides LanguageManager::getCurrentLanguage
1 call to ConfigurableLanguageManager::getCurrentLanguage()
- ConfigurableLanguageManager::init in core/
modules/ language/ src/ ConfigurableLanguageManager.php
File
- core/
modules/ language/ src/ ConfigurableLanguageManager.php, line 210
Class
- ConfigurableLanguageManager
- Overrides default LanguageManager to provide configured languages.
Namespace
Drupal\languageCode
public function getCurrentLanguage($type = LanguageInterface::TYPE_INTERFACE) {
if (!isset($this->negotiatedLanguages[$type])) {
// Ensure we have a valid value for this language type.
$this->negotiatedLanguages[$type] = $this
->getDefaultLanguage();
if ($this->negotiator && $this
->isMultilingual()) {
if (!isset($this->initializing[$type])) {
$this->initializing[$type] = TRUE;
$negotiation = $this->negotiator
->initializeType($type);
$this->negotiatedLanguages[$type] = reset($negotiation);
$this->negotiatedMethods[$type] = key($negotiation);
unset($this->initializing[$type]);
}
elseif ($type == LanguageInterface::TYPE_INTERFACE) {
return new Language([
'id' => LanguageInterface::LANGCODE_SYSTEM,
]);
}
}
}
return $this->negotiatedLanguages[$type];
}