Php Yii2注册后自动登录

Php Yii2注册后自动登录,php,login,yii2,Php,Login,Yii2,在yii2注册后如何实现自动登录?在yii1中,我们通过用户身份实现了这一点,但现在我找不到它 我的控制器 public function actionCreate() { $model = new User(); if ($model->load(Yii::$app->request->post()) && $model->save()) { Yii::$app->session->setFlash('su

在yii2注册后如何实现自动登录?在yii1中,我们通过用户身份实现了这一点,但现在我找不到它

我的控制器

public function actionCreate()
{
    $model = new User();

    if ($model->load(Yii::$app->request->post()) && $model->save()) {
         Yii::$app->session->setFlash('success', 'Please Login with Email/Password!');

        return $this->redirect('../site/login');
    } else {
        return $this->render('create', [
            'model' => $model,
        ]);
    }
}  

如果注册成功,我想自动登录,而不是登录网站。

您可以使用此方法完成

例如:

if ($userModel->load(Yii::$app->request->post()) && $userModel->save()) {
    Yii::$app->user->switchIdentity($userModel); // log in
    // do your stuff
}

你可以用这种方法来完成

例如:

if ($userModel->load(Yii::$app->request->post()) && $userModel->save()) {
    Yii::$app->user->switchIdentity($userModel); // log in
    // do your stuff
}

我不使用这个方法,因为它实际上调用了
swichIdentity()
来进行登录(我不知道OP是否希望日志在强制登录时计数),我使用的是
swichIdentity()
。但我认为这是一个意见问题:Psure您可以使用
switchIdentity
而不是
login
,但我认为
login
更容易理解,不要使用此方法,因为它实际上调用
swichIdentity()
来进行登录(我不知道OP是否希望日志与此强制登录一起计数),我宁愿使用
swichIdentity()
。但我认为这是一个意见问题:Psure您可以使用
switchIdentity
而不是
login
,但我认为
login
更容易理解