Cakephp获取电子邮件正文而不发送

时间:2018-01-31 01:14:07

标签: php email cakephp-2.0

使用CakePHP 2.0,是否可以在不实际发送电子邮件的情况下获取电子邮件的正文?我希望获得正文,因为我将使用AWS发送实际的电子邮件,并使用CakeEmail来构建电子邮件正文。

我将应用程序上传到服务器后,使用composer加载CakePHP库,因此解决方案不应涉及更改库文件。

我目前正在尝试使用以下内容 -

$content = $email->template('register_email', 'default')
    ->emailFormat('html')
    ->viewVars($email_data)
    ->message('html');

$content即将出现。

非常感谢任何帮助。

谢谢和问候,

Prathamesh。

1 个答案:

答案 0 :(得分:0)

我找到了一种方法来完成这项工作。在email.php配置文件中,我将EmailConfig类设置为以下

class EmailConfig {

    public $default = array(
        'transport' => 'Debug',
        'from'=>abc@test.com,
        'to'=>abc@test.com
    );

}

然后在获取身体时我使用了以下代码 -

App::uses('CakeEmail','Network/Email');
$email = new CakeEmail();
$content = $email->template('register_email', 'default')
    ->emailFormat('html')
    ->viewVars($email_data)
    ->send();

$email_body = $content['message'];

这就是你如何在不实际发送电子邮件的情况下获取电子邮件的内容。