CakePHP 내장 모듈을 통해 이메일(Gmail)을 보내는 방법

藏色散人
풀어 주다: 2023-04-10 08:14:01
앞으로
3468명이 탐색했습니다.

이 글은 CakePHP에 내장된 모듈을 통해 이메일(Gmail)을 보내는 방법을 소개합니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

Effect

이메일 보내기 기능은 모듈을 미리 구성해 놓으면 구현됩니다. (이 코드는 사용자 입력 정보에 따라 보내는 이메일 주소를 변경할 수 없습니다)

Prerequisite

독자들은 이미 CakePHP

Version

CakePHP 3.6.1
PHP 7.4.10

Preparation

configapp.php에 다음 구성을 추가합니다(이메일 정보를 교체해야 합니다)

'EmailTransport' => [
        'default' => [
            'className' => 'Smtp',
            'host' => 'smtp.gmail.com',
            'port' => 587,
            'timeout' => 30,
            'username' => 'name@gmail.com',
            'password' => '12345678',
            'tls' => true,
            'url' => env('EMAIL_TRANSPORT_DEFAULT_URL', null),
        ],
    ],
'Email' => [
     'default' => [
         'transport' => 'default',
         'from' => 'name@gamail.com',
         //'charset' => 'utf-8',
         //'headerCharset' => 'utf-8',
     ],
 ],
로그인 후 복사

Controller.php로 이동하여 이메일 보내기 기능을 작성합니다.
*여기에 참고가 있습니다 stackoverflow

//在最上面加载模块
use Cake\Mailer\Email;

//在任意class下写邮件发送的函数
public function send()
    {
        $email = new Email('default');
        try {
            $email->setFrom(['name@gmail.com' => 'My Site'])
                ->setTo('接受者邮箱@126.com')
                ->setSubject('主题')
                ->send('本文');
            echo "success";
        } catch (\Cake\Network\Exception\SocketException $exception) {
            $lastResponse = $email->transport()->getLastResponse();
            var_dump($lastResponse);
        }
    }
로그인 후 복사

configroutes.php

$routes->connect('/send', ['controller' => 'ControllerName', 'action' => 'send']);
로그인 후 복사
access, test
CakePHP 내장 모듈을 통해 이메일(Gmail)을 보내는 방법

error report에 경로를 작성하세요,Gmail의 보안 수준이 너무 높기 때문입니다.

Google 계정 관리 센터에 로그인 -> 보안

2단계 인증 끄기

CakePHP 내장 모듈을 통해 이메일(Gmail)을 보내는 방법

액세스 활성화

CakePHP 내장 모듈을 통해 이메일(Gmail)을 보내는 방법

CakePHP 내장 모듈을 통해 이메일(Gmail)을 보내는 방법

그런 다음 페이지를 새로 고치면 이메일이 성공적으로 전송되었음을 확인할 수 있습니다. Gmail을 통해.
CakePHP 내장 모듈을 통해 이메일(Gmail)을 보내는 방법

계정 보안을 위해 테스트가 성공한 후에는 보안 보호 수준을 높이는 것을 잊지 마세요.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 CakePHP 내장 모듈을 통해 이메일(Gmail)을 보내는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:segmentfault.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿