首页 文章

cakephp 3.5中的电子邮件功能

提问于
浏览
0

我必须使用普通的php而不是在cakephp 3.5中使用Smtp来实现发送邮件功能 .

我必须发送我放在Template / Email / html下的html testingreport.ctp .

下面我添加了controller和app.php代码 .

我收到错误 Transport config "Mail" is missing.

我在这里发送的邮件是什么?

//app.php
'EmailTransport' => [
    'default' => [
        'className' => 'Mail',
        // The following keys are used in SMTP transports
        'host' => 'localhost',
        'port' => 25,
        'timeout' => 30,
        'username' => 'user',
        'password' => 'secret',
        'client' => null,
        'tls' => null,
        'url' => env('EMAIL_TRANSPORT_DEFAULT_URL', null),
    ],
],
'Email' => [
    'default' => [
            'log' => true,
            'transport' => 'Mail',
            'emailFormat'=>'html',
            'charset' => 'utf-8',
            'headerCharset' => 'utf-8',
    ],
],


 // controller
$email = new Email('default');
    $email
    ->transport('testingreport','testingreport')
    ->from(['dkvastrakar18@gmail.com' => 'dkvastrakar18@gmail.com'])
    ->to('dkvastrakar18@gmail.com')
    ->subject('subjects')
    ->emailFormat('html')
    ->viewVars($testRequestDet)
    ->send('sendmail');

1 回答

  • 1

    电子邮件配置文件 transport 配置选项指向 EmailTransport 配置中的条目,而不指向电子邮件传输类,后者通过特定传输配置中的 className 选项进行配置 .

    长话短说:

    'transport' => 'Mail'
    

    应该:

    'transport' => 'default'
    

    也可以看看

    • Cookbook > Email > Configuration Profiles

相关问题