protected function LanguageNegotiator::negotiateLanguage in Drupal 10
Same name and namespace in other branches
- 8 core/modules/language/src/LanguageNegotiator.php \Drupal\language\LanguageNegotiator::negotiateLanguage()
- 9 core/modules/language/src/LanguageNegotiator.php \Drupal\language\LanguageNegotiator::negotiateLanguage()
Performs language negotiation using the specified negotiation method.
Parameters
string $type: The language type to be initialized.
string $method_id: The string identifier of the language negotiation method to use to detect language.
Return value
\Drupal\Core\Language\LanguageInterface|null Negotiated language object for given type and method, FALSE otherwise.
File
- core/
modules/ language/ src/ LanguageNegotiator.php, line 183
Class
- LanguageNegotiator
- Class responsible for performing language negotiation.
Namespace
Drupal\languageCode
protected function negotiateLanguage($type, $method_id) {
$langcode = NULL;
$method = $this->negotiatorManager
->getDefinition($method_id);
if (!isset($method['types']) || in_array($type, $method['types'])) {
$langcode = $this
->getNegotiationMethodInstance($method_id)
->getLangcode($this->requestStack
->getCurrentRequest());
}
$languages = $this->languageManager
->getLanguages();
return $languages[$langcode] ?? NULL;
}