Bagaimana cara saya mendapatkan nama pengguna dari ID pengguna? [Tutup]


9

Saya ingin mencetak nama pengguna hanya dengan mengetahui ID pengguna. Bagaimana saya mencapai ini?


1
Judul Anda sekitar 7, dan badan pertanyaan tentang 8. Memilih untuk ditutup tidak jelas sekarang.
Mołot

Jawaban:


17

Anda dapat menggunakan user_load atau \Drupal\user\Entity\User::loaduntuk melakukan ini. Kode di bawah ini akan memberikan solusinya

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

$name memberikan nama pengguna.


1
tautan untuk user_load disusutkan, Anda mungkin harus menggunakan Entity :: load api.drupal.org/api/drupal/…
Ashkar A.Rahman

Menggunakan $account->getDisplayName()akan membantu memastikan Anda mendapatkan nilai nama pengguna yang diubah.
Prestosaurus

7

Di D8, jika Anda tidak tahu uid, Anda bisa melakukan ini:

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

Ada beberapa cara untuk mendapatkan nama pengguna secara terprogram

$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

Anda dapat menggunakan user_load($uid); Ini akan mengembalikan objek Pengguna yang terisi penuh (dalam D7).

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

Ini harus mencetak nama pengguna.


Itu melempar kesalahan yang ditemui webiste setelah menambahkan baris ini. Saya pikir kode di atas berfungsi untuk D7

Pertanyaan ditandai [8].
wizonesolutions
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.