framework/db/ActiveQuery.php
public function one($db = null)
    {
        $row = parent::one($db);
        if ($row !== false) {
            $models = $this->populate([$row]);
            return reset($models) ?: null;
        }

        return null;
    }
public function one($db = null)
    {
        $row = parent::one($db);
        if ($row !== false) {
            $models = $this->populate([$row]);
            return reset($models) ?: null;
        }

        return null;
    }
Executes query and returns a single row of result.
@param Connection|null $db the DB connection used to create the DB command.
If `null`, the DB connection returned by [[modelClass]] will be used.
@return ActiveRecord|array|null a single row of query result. Depending on the setting of [[asArray]],
the query result may be either an array or an ActiveRecord object. `null` will be returned
if the query results in nothing.