function EntityBase::language

Same name and namespace in other branches
  1. 11.x core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::language()
  2. 10 core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::language()
  3. 8.9.x core/lib/Drupal/Core/Entity/EntityBase.php \Drupal\Core\Entity\EntityBase::language()

File

core/lib/Drupal/Core/Entity/EntityBase.php, line 320

Class

EntityBase
Defines a base entity class.

Namespace

Drupal\Core\Entity

Code

public function language() {
  if ($key = $this->getEntityType()
    ->getKey('langcode')) {
    $langcode = $this->{$key};
    $language = $this->languageManager()
      ->getLanguage($langcode);
    if ($language) {
      return $language;
    }
  }
  // Make sure we return a proper language object.
  $langcode = !empty($this->langcode) ? $this->langcode : LanguageInterface::LANGCODE_NOT_SPECIFIED;
  $language = new Language([
    'id' => $langcode,
  ]);
  return $language;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.