我必须在cakephp 3.5中使用普通的php而不是Smtp来实现发送邮件功能。
我必须发送我放在Template / Email / html下的html testingreport.ctp。
下面我添加了controller和app.php代码。
我收到错误传输配置"邮件"缺少。
我在这里发送的邮件是什么?
//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');
答案 0 :(得分:1)
电子邮件配置文件transport
配置选项指向EmailTransport
配置中的条目,而不是电子邮件传输类,后者是通过className
选项配置的。具体的运输配置。
长话短说:
'transport' => 'Mail'
应该是:
'transport' => 'default'
另见