Table of Contents
Configuration environment
Home Backend Development PHP Tutorial yii2 send email function

yii2 send email function

Apr 19, 2018 pm 02:45 PM
yii2 Function send

The content of this article is about the email sending function of yii2, which has certain reference value. Now I share it with you. Friends in need can refer to it.

First of all, to implement the email function, we need to understand yii2 There is the concept of email class

yii2 In order to solve our email sending problem, we provide us with the swiftMailer extension.

So what is swiftMailer?

Swift is a PHP function library that uses entirely object-oriented coding for sending e-mails. Swift does not rely on PHP's mail() function, because using it to send multiple emails will occupy higher server resources. Swift sends email faster and more efficiently by connecting directly to an SMTP server or MTA.

Configuration environment
  1. First configure our mailer component

//主要是对组件中各种必要的发送邮箱的属性进行配置'mailer' => [                'class' => 'yii\swiftmailer\Mailer',                'viewPath' => '@common/mail',                'useFileTransport' =>false,//这句一定有,false发送邮件,true只是生成邮件在runtime文件夹下,不发邮件
                'transport' => [                    'class' => 'Swift_SmtpTransport',                    'host' => 'smtp.qq.com',  //每种邮箱的host配置不一样
                    'username' => '11150****1@qq.com',                    'password' => '*****',//密码不是指的登录密码
                    'port' => '465',                    'encryption' => 'ssl',
                ],
            ],
Copy after login
Copy after login
# in our main.php
  1. ##Call this component in the controller or model.

  2. $mailer = \Yii::$app->mailer->compose('seekpass',['html'=>'html','adminuser'=>$post['Admin']['adminuser'],'token'=>$_SERVER['HTTP_HOST'].Url::toRoute(['manage/emailchangepass'])."&timestamp=".$time."&token=".$token."&adminuser=".$adminuser]);            $mailer ->setFrom("1115007981@qq.com")//设置发件人,虽然写了一遍但还是要写
                        ->setTo("1115007981@qq.com")//设置收件人
                        ->setSubject("黑势力科技")//摘要
                        ->send();                    //如发送成功,则返回一个bool类型的值
    Copy after login
    Copy after login
Here we need to talk about several methods.

1. The compose() method in the mailer component

compose($view = null, array $params = []) $view value is the email that needs to be loaded Template, by default in common/Mailer (determined by the viewPath attribute in the mailer configuration)

$params can contain various parameters that we need to load into the template, such as our 'token', 'adminuser' above ' and other parameter values.

It is worth mentioning that When the keys of the value are html and text, it means loading our html block template and text block template respectively.

  1. Create our email template in view

We open our common/views/mail/layout and we can see the mailer component The basic template has been written for us, so we only need to write some simple html code, and then call the layout.

We write what we want in the mail folder The html format of sending files

//例如:<P>尊敬的管理员<?=$adminuser;?></P><p> 你好</p><p>你的重置密码连接为:</p><a href="http://<?=$token?>">http://<?=$token?></a><p>请在5分钟之内重置密码,否则密码想会失效</p>  //token 为我们在compose中传入的值
Copy after login
Copy after login

This is the function of sending emails in yii2

First of all, to implement the email function, we need to understand the concept of email classes in yii2

yii2 In order to solve our email sending problem, the swiftMailer extension is provided for us.

So what is swiftMailer?

Swift is a PHP function library that uses entirely object-oriented coding for sending e-mails. Swift does not rely on PHP's mail() function, because using it to send multiple emails will occupy higher server resources. Swift sends email faster and more efficiently by connecting directly to an SMTP server or MTA.

Configuration environment

First configure our
    mailer
  1. component

    //主要是对组件中各种必要的发送邮箱的属性进行配置&#39;mailer&#39; => [                &#39;class&#39; => &#39;yii\swiftmailer\Mailer&#39;,                &#39;viewPath&#39; => &#39;@common/mail&#39;,                &#39;useFileTransport&#39; =>false,//这句一定有,false发送邮件,true只是生成邮件在runtime文件夹下,不发邮件
                    &#39;transport&#39; => [                    &#39;class&#39; => &#39;Swift_SmtpTransport&#39;,                    &#39;host&#39; => &#39;smtp.qq.com&#39;,  //每种邮箱的host配置不一样
                        &#39;username&#39; => &#39;11150****1@qq.com&#39;,                    &#39;password&#39; => &#39;*****&#39;,//密码不是指的登录密码
                        &#39;port&#39; => &#39;465&#39;,                    &#39;encryption&#39; => &#39;ssl&#39;,
                    ],
                ],
    Copy after login
    Copy after login
    # in our main.php

  2. ##Call this component in the controller or model.
  1. $mailer = \Yii::$app->mailer->compose(&#39;seekpass&#39;,[&#39;html&#39;=>&#39;html&#39;,&#39;adminuser&#39;=>$post[&#39;Admin&#39;][&#39;adminuser&#39;],&#39;token&#39;=>$_SERVER[&#39;HTTP_HOST&#39;].Url::toRoute([&#39;manage/emailchangepass&#39;])."&timestamp=".$time."&token=".$token."&adminuser=".$adminuser]);            $mailer ->setFrom("1115007981@qq.com")//设置发件人,虽然写了一遍但还是要写
                        ->setTo("1115007981@qq.com")//设置收件人
                        ->setSubject("黑势力科技")//摘要
                        ->send();                    //如发送成功,则返回一个bool类型的值
    Copy after login
    Copy after login

    Here we need to talk about several methods.

    1. The compose() method in the mailer component

compose($view = null, array $params = [])

$view value is the email that needs to be loaded Template, by default in common/Mailer (determined by the viewPath attribute in the mailer configuration)

$params can contain various parameters that we need to load into the template, such as our 'token', 'adminuser' above ' and other parameter values. It is worth mentioning that
When the keys of the value are

html

and text, it means loading our html block template and text block template respectively. Create our email template in view

  1. We open our common/views/mail/layout and we can see the mailer component The basic template has been written for us, so we only need to write some simple html code, and then call the layout.

  2. We write what we want in the mail folder HTML format of sending files
//例如:<P>尊敬的管理员<?=$adminuser;?></P><p> 你好</p><p>你的重置密码连接为:</p><a href="http://<?=$token?>">http://<?=$token?></a><p>请在5分钟之内重置密码,否则密码想会失效</p>  //token 为我们在compose中传入的值
Copy after login
Copy after login

This is the function of sending emails in yii2

Related recommendations:

Yii2 Forgot password operation based on email verification

yii2 resetful authorization verification

The above is the detailed content of yii2 send email function. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

What functions does Doubao app have? What functions does Doubao app have? Mar 01, 2024 pm 10:04 PM

There will be many AI creation functions in the Doubao app, so what functions does the Doubao app have? Users can use this software to create paintings, chat with AI, generate articles for users, help everyone search for songs, etc. This function introduction of the Doubao app can tell you the specific operation method. The specific content is below, so take a look! What functions does the Doubao app have? Answer: You can draw, chat, write articles, and find songs. Function introduction: 1. Question query: You can use AI to find answers to questions faster, and you can ask any kind of questions. 2. Picture generation: AI can be used to create different pictures for everyone. You only need to tell everyone the general requirements. 3. AI chat: can create an AI that can chat for users,

The difference between vivox100s and x100: performance comparison and function analysis The difference between vivox100s and x100: performance comparison and function analysis Mar 23, 2024 pm 10:27 PM

Both vivox100s and x100 mobile phones are representative models in vivo's mobile phone product line. They respectively represent vivo's high-end technology level in different time periods. Therefore, the two mobile phones have certain differences in design, performance and functions. This article will conduct a detailed comparison between these two mobile phones in terms of performance comparison and function analysis to help consumers better choose the mobile phone that suits them. First, let’s look at the performance comparison between vivox100s and x100. vivox100s is equipped with the latest

How to send files to others on TikTok? How to delete files sent to others? How to send files to others on TikTok? How to delete files sent to others? Mar 22, 2024 am 08:30 AM

On Douyin, users can not only share their life details and talents, but also interact with other users. In this process, sometimes we need to send files to other users, such as pictures, videos, etc. So, how to send files to others on Douyin? 1. How to send files to others on Douyin? 1. Open Douyin and enter the chat interface where you want to send files. 2. Click the &quot;+&quot; sign in the chat interface and select &quot;File&quot;. 3. In the file options, you can choose to send pictures, videos, audio and other files. After selecting the file you want to send, click &quot;Send&quot;. 4. Wait for the other party to accept your file. Once the other party accepts it, the file will be transferred successfully. 2. How to delete files sent to others on Douyin? 1. Open Douyin and enter the text you sent.

What exactly is self-media? What are its main features and functions? What exactly is self-media? What are its main features and functions? Mar 21, 2024 pm 08:21 PM

With the rapid development of the Internet, the concept of self-media has become deeply rooted in people's hearts. So, what exactly is self-media? What are its main features and functions? Next, we will explore these issues one by one. 1. What exactly is self-media? We-media, as the name suggests, means you are the media. It refers to an information carrier through which individuals or teams can independently create, edit, publish and disseminate content through the Internet platform. Different from traditional media, such as newspapers, television, radio, etc., self-media is more interactive and personalized, allowing everyone to become a producer and disseminator of information. 2. What are the main features and functions of self-media? 1. Low threshold: The rise of self-media has lowered the threshold for entering the media industry. Cumbersome equipment and professional teams are no longer needed.

What are the functions of Xiaohongshu account management software? How to operate a Xiaohongshu account? What are the functions of Xiaohongshu account management software? How to operate a Xiaohongshu account? Mar 21, 2024 pm 04:16 PM

As Xiaohongshu becomes popular among young people, more and more people are beginning to use this platform to share various aspects of their experiences and life insights. How to effectively manage multiple Xiaohongshu accounts has become a key issue. In this article, we will discuss some of the features of Xiaohongshu account management software and explore how to better manage your Xiaohongshu account. As social media grows, many people find themselves needing to manage multiple social accounts. This is also a challenge for Xiaohongshu users. Some Xiaohongshu account management software can help users manage multiple accounts more easily, including automatic content publishing, scheduled publishing, data analysis and other functions. Through these tools, users can manage their accounts more efficiently and increase their account exposure and attention. In addition, Xiaohongshu account management software has

PHP Tips: Quickly Implement Return to Previous Page Function PHP Tips: Quickly Implement Return to Previous Page Function Mar 09, 2024 am 08:21 AM

PHP Tips: Quickly implement the function of returning to the previous page. In web development, we often encounter the need to implement the function of returning to the previous page. Such operations can improve the user experience and make it easier for users to navigate between web pages. In PHP, we can achieve this function through some simple code. This article will introduce how to quickly implement the function of returning to the previous page and provide specific PHP code examples. In PHP, we can use $_SERVER['HTTP_REFERER'] to get the URL of the previous page

What is Discuz? Definition and function introduction of Discuz What is Discuz? Definition and function introduction of Discuz Mar 03, 2024 am 10:33 AM

"Exploring Discuz: Definition, Functions and Code Examples" With the rapid development of the Internet, community forums have become an important platform for people to obtain information and exchange opinions. Among the many community forum systems, Discuz, as a well-known open source forum software in China, is favored by the majority of website developers and administrators. So, what is Discuz? What functions does it have, and how can it help our website? This article will introduce Discuz in detail and attach specific code examples to help readers learn more about it.

Detailed explanation of the functions and functions of GDM under Linux Detailed explanation of the functions and functions of GDM under Linux Mar 01, 2024 pm 04:18 PM

Detailed explanation of the functions and functions of GDM under Linux In the Linux operating system, GDM (GNOMEDisplayManager) is a graphical login manager that provides an interface for users to log in and log out of the system. GDM is usually part of the GNOME desktop environment, but can be used by other desktop environments as well. The role of GDM is not only to provide a login interface, but also includes user session management, screen saver, automatic login and other functions. The functions of GDM mainly include the following aspects:

See all articles