public function UserSession::getPreferredLangcode in Drupal 9
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Session/UserSession.php \Drupal\Core\Session\UserSession::getPreferredLangcode()
Returns the preferred language code of the account.
Parameters
bool $fallback_to_default: (optional) Whether the return value will fall back to the site default language if the user has no language preference.
Return value
string Returned language code depends upon following:
- The user preferred language code is returned if set in the account.
- If the user has no preferred language and $fallback_to_default is TRUE then the site default language code is returned.
- If the user has no preferred language and $fallback_to_default is FALSE then empty string is returned.
Overrides AccountInterface::getPreferredLangcode
File
- core/
lib/ Drupal/ Core/ Session/ UserSession.php, line 131
Class
- UserSession
- An implementation of the user account interface for the global user.
Namespace
Drupal\Core\SessionCode
public function getPreferredLangcode($fallback_to_default = TRUE) {
$language_list = \Drupal::languageManager()
->getLanguages();
if (!empty($this->preferred_langcode) && isset($language_list[$this->preferred_langcode])) {
return $language_list[$this->preferred_langcode]
->getId();
}
else {
return $fallback_to_default ? \Drupal::languageManager()
->getDefaultLanguage()
->getId() : '';
}
}