如何在Drupal8中获取当前用户信息

时间:2017-08-23 10:12:56

标签: drupal-8

我精通Drupal 7,在那里我从全球$ user获取用户信息,但是我是如何进入Drupal8的。

4 个答案:

答案 0 :(得分:2)

请使用以下代码获取Drupal 8中的当前用户对象: $user = \Drupal::currentUser();

答案 1 :(得分:1)

$ user = \ Drupal :: currentUser();

要获取当前用户ID,您可以使用:

$ user = User :: load(\ Drupal :: currentUser() - > id());

答案 2 :(得分:0)

一种为当前活动用户获取 full drupal用户对象的衬里方式:

$account = \Drupal\user\Entity\User::load(\Drupal::currentUser()->id());

为什么不只是Drupal::currentUser()?因为在大多数情况下,这是不够的,因为您需要一个完全加载的用户对象,而不是:

答案 3 :(得分:-1)

根据entity api,我们不应使用User :: load。相反,请像这样使用entityTypeManager:

$user_id = \Drupal::currentUser()->id();
$user_entity = \Drupal::entityTypeManager()->getStorage('user')->load($user_id);