UserModel::getID PHP Method

getID() public method

Get a user by ID.
public getID ( integer $ID, string | false $DatasetType = false, array $Options = [] ) : array | object | false
$ID integer The ID of the user.
$DatasetType string | false Whether to return an array or object.
$Options array Additional options to affect fetching. Currently unused.
return array | object | false Returns the user or **false** if the user wasn't found.
    public function getID($ID, $DatasetType = false, $Options = [])
    {
        if (!$ID) {
            return false;
        }
        $DatasetType = $DatasetType ?: DATASET_TYPE_OBJECT;
        // Check page cache, then memcached
        $User = $this->getUserFromCache($ID, 'userid');
        // If not, query DB
        if ($User === Gdn_Cache::CACHEOP_FAILURE) {
            $User = parent::getID($ID, DATASET_TYPE_ARRAY);
            // We want to cache a non-existent user no-matter what.
            if (!$User) {
                $User = null;
            }
            $this->userCache($User, $ID);
        } elseif (!$User) {
            return false;
        }
        // Apply calculated fields
        $this->setCalculatedFields($User);
        // Allow FALSE returns
        if ($User === false || is_null($User)) {
            return false;
        }
        if (is_array($User) && $DatasetType == DATASET_TYPE_OBJECT) {
            $User = (object) $User;
        }
        if (is_object($User) && $DatasetType == DATASET_TYPE_ARRAY) {
            $User = (array) $User;
        }
        $this->EventArguments['LoadedUser'] =& $User;
        $this->fireEvent('AfterGetID');
        return $User;
    }

Usage Example

Ejemplo n.º 1
0
 public function getValidUser($user_id, $ret_type = DATASET_TYPE_ARRAY)
 {
     $UserModel = new UserModel();
     $result = $UserModel->getID($user_id, $ret_type);
     return GetValue('Deleted', $result) === '1' ? FALSE : $result;
     // $result can still be false.
 }
All Usage Examples Of UserModel::getID
UserModel