¿Cómo obtengo el nombre de usuario de la ID de usuario? [cerrado]


9

Quiero imprimir el nombre de usuario conociendo solo la ID de usuario. ¿Cómo logro esto?


1
Su título es de aproximadamente 7, y el cuerpo de la pregunta sobre 8. Votar para cerrar ahora no está claro.
Mołot

Respuestas:


17

Puede usar user_load o \Drupal\user\Entity\User::loadpara hacer esto. El siguiente código proporcionará la solución

 public function content() {
     $account = \Drupal\user\Entity\User::load('uid'); // pass your uid
     $name = $account->getUsername();
     drupal_set_message($name);
 }

$name da el nombre de usuario del usuario.


1
el enlace para user_load se deprecia, probablemente deberías usar Entity :: load api.drupal.org/api/drupal/…
Ashkar A.Rahman

El uso $account->getDisplayName()le ayudará a asegurarse de obtener cualquier valor alterado del nombre de usuario.
Prestosaurus

7

En D8, si no conoce el uid, puede hacer esto:

function test_user_login(\Drupal\Core\Session\AccountInterface $account) {
   $account = \Drupal\user\Entity\User::load(\Drupal::currentUser()->id());
   $user = $account->get('name')->value;
   drupal_set_message($user, 'status'); }

1

Hay varias formas de obtener el nombre del usuario mediante programación

$account = \Drupal\user\Entity\User::load(1); // pass your uid    
//1 
drupal_set_message($account->name->value);    
//2
drupal_set_message($account->get("name")->value);    
//3
drupal_set_message($account->getUsername());
//4
drupal_set_message($account->name->getValue()[0][value]);

0

Puede usar user_load($uid); Esto devolverá un objeto de Usuario completamente cargado (en D7).

$user = user_load($uid);
print $user->name;

Esto debería imprimir el nombre de usuario.


Lanza el error encontrado en el sitio web después de agregar estas líneas. Creo que el código anterior funciona para D7

La pregunta está etiquetada [8].
wizonesolutions
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.