Home PHP Framework ThinkPHP Use PHPMailer to send emails in ThinkPHP6

Use PHPMailer to send emails in ThinkPHP6

Jun 20, 2023 pm 04:03 PM
thinkphp Email sending phpmailer

ThinkPHP6 is a PHP development framework based on MVC architecture. It provides many convenient functions in daily development, including the function of sending emails. This article will introduce how to use PHPMailer to send emails in ThinkPHP6.

1. Install PHPMailer

PHPMailer is an open source PHP email sending class. We can install it through Composer. Run the following command in the project root directory:

composer require phpmailer/phpmailer
Copy after login

After the installation is complete, we can use PHPMailer in the code.

2. Configure email sending parameters

Before starting to send emails, we need to configure the relevant parameters for email sending, including SMTP server, port, account password, etc. We can create a new mail.php file in the application's config directory to save the parameter configuration for email sending. The code is as follows:

<?php

return [
    'host'       => 'smtp.qq.com',
    'port'       => 465,
    'username'   => '邮箱账号',
    'password'   => '邮箱密码',
    'mail_from'  => '发件人邮箱地址',
    'name_from'  => '发件人名称',
    'mail_reply' => '回复邮件地址',
];
Copy after login

3. Write the email sending function

Now we are ready After configuring the parameters required for email sending, we can start writing the email sending function. In ThinkPHP6, we can send emails by customizing a mail service. First, we need to create a new service directory under the application directory and create a new MailService class in it. The code is as follows:

<?php

namespace appservice;

use PHPMailerPHPMailerPHPMailer;
use thinkacadeConfig;

class MailService
{
    public function sendMail($to, $subject, $content)
    {
        $mail = new PHPMailer();
        $config = Config::get('mail');

        $mail->isSMTP(); // 使用SMTP服务发送邮件
        $mail->SMTPAuth = true; // 启用 SMTP 认证
        $mail->Host = $config['host']; // SMTP 服务器
        $mail->Port = $config['port']; // SMTP服务器的端口号
        $mail->Username = $config['username']; // SMTP账号
        $mail->Password = $config['password']; // SMTP密码

        $mail->From = $config['mail_from']; // 发件人邮箱
        $mail->FromName = $config['name_from']; // 发件人名称
        $mail->isHTML(true); // 邮件正文是否为html编码
        $mail->CharSet = 'utf-8'; // 设置邮件字符集
        $mail->addAddress($to); // 收件人邮箱地址
        $mail->Subject = $subject; // 邮件标题
        $mail->Body = $content; // 邮件内容

        if (!$mail->send()) {
            return $mail->ErrorInfo;
        } else {
            return true;
        }
    }
}
Copy after login

In the above code , we used the SMTP method provided by PHPMailer to send emails. Since configuration information needs to be read when sending emails, we use the Config class to obtain the parameter configuration for email sending in the code.

4. Use the email sending function

After completing the writing of the email sending function, we need to call this function in the controller. The following is a simple sample code:

<?php

namespace appcontroller;

use appserviceMailService;

class Index
{
    public function index()
    {
        $to = '收件人邮箱地址';
        $subject = '邮件标题';
        $content = '邮件内容';

        $mailService = new MailService();
        $result = $mailService->sendMail($to, $subject, $content);
        if($result === true){
            echo '发送成功';
        }else{
            echo '发送失败,错误信息:' . $result;
        }
    }
}
Copy after login

By calling the sendMail method in MailService, we can easily send emails.

5. Summary

This article introduces the specific steps of using PHPMailer to send emails in ThinkPHP6. PHPMailer is a powerful open source email sending class that can help us easily implement the email sending function. When using PHPMailer, we need to correctly configure the email sending parameters and write the email sending function according to actual needs.

The above is the detailed content of Use PHPMailer to send emails in ThinkPHP6. 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

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
1 months ago By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

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)

How to run thinkphp project How to run thinkphp project Apr 09, 2024 pm 05:33 PM

To run the ThinkPHP project, you need to: install Composer; use Composer to create the project; enter the project directory and execute php bin/console serve; visit http://localhost:8000 to view the welcome page.

There are several versions of thinkphp There are several versions of thinkphp Apr 09, 2024 pm 06:09 PM

ThinkPHP has multiple versions designed for different PHP versions. Major versions include 3.2, 5.0, 5.1, and 6.0, while minor versions are used to fix bugs and provide new features. The latest stable version is ThinkPHP 6.0.16. When choosing a version, consider the PHP version, feature requirements, and community support. It is recommended to use the latest stable version for best performance and support.

How to run thinkphp How to run thinkphp Apr 09, 2024 pm 05:39 PM

Steps to run ThinkPHP Framework locally: Download and unzip ThinkPHP Framework to a local directory. Create a virtual host (optional) pointing to the ThinkPHP root directory. Configure database connection parameters. Start the web server. Initialize the ThinkPHP application. Access the ThinkPHP application URL and run it.

Which one is better, laravel or thinkphp? Which one is better, laravel or thinkphp? Apr 09, 2024 pm 03:18 PM

Performance comparison of Laravel and ThinkPHP frameworks: ThinkPHP generally performs better than Laravel, focusing on optimization and caching. Laravel performs well, but for complex applications, ThinkPHP may be a better fit.

How to install thinkphp How to install thinkphp Apr 09, 2024 pm 05:42 PM

ThinkPHP installation steps: Prepare PHP, Composer, and MySQL environments. Create projects using Composer. Install the ThinkPHP framework and dependencies. Configure database connection. Generate application code. Launch the application and visit http://localhost:8000.

Development suggestions: How to use the ThinkPHP framework to implement asynchronous tasks Development suggestions: How to use the ThinkPHP framework to implement asynchronous tasks Nov 22, 2023 pm 12:01 PM

"Development Suggestions: How to Use the ThinkPHP Framework to Implement Asynchronous Tasks" With the rapid development of Internet technology, Web applications have increasingly higher requirements for handling a large number of concurrent requests and complex business logic. In order to improve system performance and user experience, developers often consider using asynchronous tasks to perform some time-consuming operations, such as sending emails, processing file uploads, generating reports, etc. In the field of PHP, the ThinkPHP framework, as a popular development framework, provides some convenient ways to implement asynchronous tasks.

How is the performance of thinkphp? How is the performance of thinkphp? Apr 09, 2024 pm 05:24 PM

ThinkPHP is a high-performance PHP framework with advantages such as caching mechanism, code optimization, parallel processing and database optimization. Official performance tests show that it can handle more than 10,000 requests per second and is widely used in large-scale websites and enterprise systems such as JD.com and Ctrip in actual applications.

Development advice: How to log in ThinkPHP applications Development advice: How to log in ThinkPHP applications Nov 22, 2023 am 11:24 AM

Development suggestions: Overview of how to perform logging in ThinkPHP applications: Logging is a very important task when developing web applications. It can help us monitor the running status of the application in real time, locate problems and solve bugs. This article will introduce how to perform logging in ThinkPHP applications, including log classification, storage location and configuration method. At the same time, some logging best practices will also be shared. 1. ThinkPHP’s log classification: ThinkPHP supports multiple types of log classification

See all articles