//common-->config-->main.php下設定,代碼:
'mailer' => [ 'class' => 'yii\swiftmailer\Mailer', 'viewPath' => '@common/mail', 'useFileTransport' => FALSE, 'transport' => [ 'class' => 'Swift_SmtpTransport', 'host' => 'smtp.exmail.qq.com', 'username' => 'serviceEmail', 'password' => 'emailPassword', 'port' => '465', 'encryption' => 'ssl', ], ],
//PasswordResetRequestForm裡面的代碼:
public function sendEmail(){ /* @var $user User */ $user = User::findOne([ 'status' => User::STATUS_ACTIVE, 'email' => $this->email, ]); if ($user) { if (!User::isPasswordResetTokenValid($user->password_reset_token)) { $user->generatePasswordResetToken(); } if ($user->save()) { return \Yii::$app->mailer->compose(['html' => 'passwordResetToken-html', 'text' => 'passwordResetToken-text'], ['user' => $user]) ->setFrom([\Yii::$app->params['supportEmail'] => \Yii::$app->name . ' robot']) ->setTo($this->email) ->setSubject('Password reset for ' . \Yii::$app->name) ->send(); } } return false;}
//但是通過以下方法可以接收到發送過來的郵件
public function actionMailws() { if(\Yii::$app->mailer->compose() ->setFrom('serviceEmail') ->setTo('testEmail') ->setSubject('hahahahahaha') ->send()){ return TRUE; }else{ return FALSE; }}有大神解釋一下或者教一下怎麼郵件密碼找回嗎?
回複內容:
//common-->config-->main.php下設定,代碼:
'mailer' => [ 'class' => 'yii\swiftmailer\Mailer', 'viewPath' => '@common/mail', 'useFileTransport' => FALSE, 'transport' => [ 'class' => 'Swift_SmtpTransport', 'host' => 'smtp.exmail.qq.com', 'username' => 'serviceEmail', 'password' => 'emailPassword', 'port' => '465', 'encryption' => 'ssl', ], ],
//PasswordResetRequestForm裡面的代碼:
public function sendEmail(){ /* @var $user User */ $user = User::findOne([ 'status' => User::STATUS_ACTIVE, 'email' => $this->email, ]); if ($user) { if (!User::isPasswordResetTokenValid($user->password_reset_token)) { $user->generatePasswordResetToken(); } if ($user->save()) { return \Yii::$app->mailer->compose(['html' => 'passwordResetToken-html', 'text' => 'passwordResetToken-text'], ['user' => $user]) ->setFrom([\Yii::$app->params['supportEmail'] => \Yii::$app->name . ' robot']) ->setTo($this->email) ->setSubject('Password reset for ' . \Yii::$app->name) ->send(); } } return false;}
//但是通過以下方法可以接收到發送過來的郵件
public function actionMailws() { if(\Yii::$app->mailer->compose() ->setFrom('serviceEmail') ->setTo('testEmail') ->setSubject('hahahahahaha') ->send()){ return TRUE; }else{ return FALSE; }}有大神解釋一下或者教一下怎麼郵件密碼找回嗎?
你可以看下這個教程,我用他上面說的成功了,163不需要什麼設定,其他郵箱好像要開啟smtp等
郵箱功能設定