it-swarm.com.de

Woher wissen Sie, ob der Benutzer Besucher oder angemeldetes Mitglied ist?

Wie kann ich programmgesteuert feststellen, ob der aktuelle Benutzer anonym oder authentifiziert ist?

30
Axel Briche

Um einen robusteren und aussagekräftigeren Code zu erhalten, können Sie die praktische Methode User::isAnonymous() verwenden, z.

if (\Drupal::currentUser()->isAnonymous()) {
  // Anonymous user...
}
58
Clive
  $current= \Drupal::currentUser();
  if (!$current->id()) {
    // is visitor
  }
  else {
    // is logged
  }
6
Axel Briche

isAnonymous() birgt die Gefahr, nicht zu funktionieren, wenn eine Site Daten (z. B. in Formularen) in PrivateTempStore speichert. Daher bevorzuge ich Folgendes:

if (\Drupal::currentUser()->isAuthenticated()) {
  // This user is logged in.
} else {
  // This user is anonymous.
}
1