class UserSession implements AccountInterface (View source)

An implementation of the user account interface for the global user.

Properties

protected int $uid

User ID.

protected array $roles

List of the roles this user has.

protected string $access

The Unix timestamp when the user last accessed the site.

string $name

The name of this account.

protected string $preferred_langcode

The preferred language code of the account.

protected string $preferred_admin_langcode

The preferred administrative language code of the account.

protected string $mail

The email address of this account.

protected string $timezone

The timezone of this account.

Methods

__construct(array $values = [])

Constructs a new user session.

int
id()

Returns the user ID or 0 for anonymous.

array
getRoles(bool $exclude_locked_roles = FALSE)

Returns a list of roles.

bool
hasPermission(string $permission)

Checks whether a user has a certain permission.

bool
isAuthenticated()

Returns TRUE if the account is authenticated.

bool
isAnonymous()

Returns TRUE if the account is anonymous.

string
getPreferredLangcode(bool $fallback_to_default = TRUE)

Returns the preferred language code of the account.

string
getPreferredAdminLangcode(bool $fallback_to_default = TRUE)

Returns the preferred administrative language code of the account.

string
getUsername()

Returns the unaltered login name of this account.

string
getAccountName()

Returns the unaltered login name of this account.

getDisplayName()

Returns the display name of this account.

string|null
getEmail()

Returns the email address of this account.

string
getTimeZone()

Returns the timezone of this account.

int
getLastAccessedTime()

The timestamp when the account last accessed the site.

getRoleStorage()

Returns the role storage object.

Details

__construct(array $values = [])

Constructs a new user session.

Parameters

array $values

Array of initial values for the user session.

int id()

Returns the user ID or 0 for anonymous.

Return Value

int

The user ID.

array getRoles(bool $exclude_locked_roles = FALSE)

Returns a list of roles.

Parameters

bool $exclude_locked_roles

(optional) If TRUE, locked roles (anonymous/authenticated) are not returned.

Return Value

array

List of role IDs.

bool hasPermission(string $permission)

Checks whether a user has a certain permission.

Parameters

string $permission

The permission string to check.

Return Value

bool

TRUE if the user has the permission, FALSE otherwise.

bool isAuthenticated()

Returns TRUE if the account is authenticated.

Return Value

bool

TRUE if the account is authenticated.

bool isAnonymous()

Returns TRUE if the account is anonymous.

Return Value

bool

TRUE if the account is anonymous.

string getPreferredLangcode(bool $fallback_to_default = TRUE)

Returns the preferred language code of the account.

Parameters

bool $fallback_to_default

(optional) Whether the return value will fall back to the site default language if the user has no language preference.

Return Value

string

Returned language code depends upon following:

  • The user preferred language code is returned if set in the account.
  • If the user has no preferred language and $fallback_to_default is TRUE then the site default language code is returned.
  • If the user has no preferred language and $fallback_to_default is FALSE then empty string is returned.

string getPreferredAdminLangcode(bool $fallback_to_default = TRUE)

Returns the preferred administrative language code of the account.

Defines which language is used on administrative pages.

Parameters

bool $fallback_to_default

(optional) Whether the return value will fall back to the site default language if the user has no administration language preference.

Return Value

string

The language code that is preferred by the account for administration pages. If the preferred language is not set or is a language not configured anymore on the site, the site default is returned or an empty string is returned (if $fallback_to_default is FALSE).

string getUsername()

Returns the unaltered login name of this account.

Return Value

string

An unsanitized plain-text string with the name of this account that is used to log in. Only display this name to admins and to the user who owns this account, and only in the context of the name used to log in. For any other display purposes, use \Drupal\Core\Session\AccountInterface::getDisplayName() instead.

string getAccountName()

Returns the unaltered login name of this account.

Return Value

string

An unsanitized plain-text string with the name of this account that is used to log in. Only display this name to admins and to the user who owns this account, and only in the context of the name used to login. For any other display purposes, use \Drupal\Core\Session\AccountInterface::getDisplayName() instead.

string|MarkupInterface getDisplayName()

Returns the display name of this account.

By default, the passed-in object's 'name' property is used if it exists, or else, the site-defined value for the 'anonymous' variable. However, a module may override this by implementing hook_user_format_name_alter(&$name, $account).

Return Value

string|MarkupInterface

Either a string that will be auto-escaped on output or a MarkupInterface object that is already HTML escaped. Either is safe to be printed within HTML fragments.

string|null getEmail()

Returns the email address of this account.

Return Value

string|null

The email address, or NULL if the account is anonymous or the user does not have an email address.

string getTimeZone()

Returns the timezone of this account.

Return Value

string

Name of the timezone.

int getLastAccessedTime()

The timestamp when the account last accessed the site.

A value of 0 means the user has never accessed the site.

Return Value

int

Timestamp of the last access.

protected RoleStorageInterface getRoleStorage()

Returns the role storage object.

Return Value

RoleStorageInterface

The role storage object.