我精通Drupal 7,在那里我从全球$ user获取用户信息,但是我是如何进入Drupal8的。
答案 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);