interface UserDataInterface

Same name and namespace in other branches
  1. 9 core/modules/user/src/UserDataInterface.php \Drupal\user\UserDataInterface
  2. 8.9.x core/modules/user/src/UserDataInterface.php \Drupal\user\UserDataInterface
  3. 11.x core/modules/user/src/UserDataInterface.php \Drupal\user\UserDataInterface

Defines the user data service interface.

Hierarchy

Expanded class hierarchy of UserDataInterface

All classes that implement UserDataInterface

3 files declare their use of UserDataInterface
ContactPageAccess.php in core/modules/contact/src/Access/ContactPageAccess.php
UserController.php in core/modules/user/src/Controller/UserController.php
UserData.php in core/modules/user/src/Plugin/views/field/UserData.php

File

core/modules/user/src/UserDataInterface.php, line 8

Namespace

Drupal\user
View source
interface UserDataInterface {
    
    /**
     * Returns data stored for a user account.
     *
     * @param string $module
     *   The name of the module the data is associated with.
     * @param int $uid
     *   (optional) The user account ID the data is associated with.
     * @param string $name
     *   (optional) The name of the data key.
     *
     * @return mixed|array
     *   The requested user account data, depending on the arguments passed:
     *   - For $module, $name, and $uid, the stored value is returned, or NULL if
     *     no value was found.
     *   - For $module and $uid, an associative array is returned that contains
     *     the stored data name/value pairs.
     *   - For $module and $name, an associative array is returned whose keys are
     *     user IDs and whose values contain the stored values.
     *   - For $module only, an associative array is returned that contains all
     *     existing data for $module in all user accounts, keyed first by user ID
     *     and $name second.
     */
    public function get($module, $uid = NULL, $name = NULL);
    
    /**
     * Stores data for a user account.
     *
     * @param string $module
     *   The name of the module the data is associated with.
     * @param int $uid
     *   The user account ID the data is associated with.
     * @param string $name
     *   The name of the data key.
     * @param mixed $value
     *   The value to store. Non-scalar values are serialized automatically.
     */
    public function set($module, $uid, $name, $value);
    
    /**
     * Deletes data stored for a user account.
     *
     * @param string|array $module
     *   (optional) The name of the module the data is associated with. Can also
     *   be an array to delete the data of multiple modules.
     * @param int|array $uid
     *   (optional) The user account ID the data is associated with. If omitted,
     *   all data for $module is deleted. Can also be an array of IDs to delete
     *   the data of multiple user accounts.
     * @param string $name
     *   (optional) The name of the data key. If omitted, all data associated with
     *   $module and $uid is deleted.
     */
    public function delete($module = NULL, $uid = NULL, $name = NULL);

}

Members

Title Sort descending Modifiers Object type Summary
UserDataInterface::delete public function Deletes data stored for a user account.
UserDataInterface::get public function Returns data stored for a user account.
UserDataInterface::set public function Stores data for a user account.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.