Kullanıcının ziyaretçi veya giriş yapmış olup olmadığını nasıl anlarım?


30

Geçerli kullanıcının adsız veya kimliği doğrulanmış olup olmadığını programlı olarak nasıl belirleyebilirim?

Yanıtlar:


57

Daha sağlam ve açıklayıcı bir kod uğruna User::isAnonymous(), örneğin kullanışlı yöntemi kullanabilirsiniz.

if (\Drupal::currentUser()->isAnonymous()) {
  // Anonymous user...
}

2
Mümkün olduğunda, aşağıdaki gibi yöntemleri kullanın: Uygulamaya değil, arabirime programlayın. Bir IDE w / kod tamamlama işlemi Drupal 8 çalışması için paha biçilmezdir.
mpdonadio

3
Bununla karşılaşan herkes için, \ Drupal :: currentUser () -> isAuthenticated () öğesinin D7 user_is_logged_in ()
Jaypan

Özel bir modül oluşturdum ve bu fonksiyonun çalışmasını sağlayamıyorum. Modülüme eklemem gereken ek bir şey var mı? Şimdiden teşekkür ederim.
SuperTony

6
  $current= \Drupal::currentUser();
  if (!$current->id()) {
    // is visitor
  }
  else {
    // is logged
  }

-4

U bu kodu kullanabilir ::

global $user;
if ($user->uid == 0) {
  //user is not logged in
}else{
  //user is logged in
}

2
Drupal kodu Drupal 7 için çalışır, ancak Drupal 8
Dev

1
Evet ve kullanın === kodlama standartları için karşılaştırma yapmak için ve diğerlerinden önce ve sonra boşluk koymak için: /
klidifia
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.