0

我正在尝试使用 CakePHP 2x 实用程序 CakeEmail 发送电子邮件,我正在动态获取所有值,如下所示-

$Email = new CakeEmail();
$Email->from($from_id);
$Email->to($to_id);
$Email->subject($subject);
$Email->send($body);

有时电子邮件发送没有任何失败,但有时不会。最后我发现了主题行长度的问题。每当我的主题行变大时,电子邮件就无法以编程方式正确发送。但是,每当我的主题是行少于近 75 个字符时,它就会完美运行。那么,如何通过扩大主题行长度来解决这个问题。通常在 gmail 中没有主题长度的限制。但是在CakePHP 2x CakeEmail 实用程序中不允许以编程方式。

4

2 回答 2

0

你使用 SMTP。如果没有,请使用 SMTP 发送邮件。和支票。请按照下面给定的链接。

http://book.cakephp.org/2.0/en/core-utility-libraries/email.html

于 2013-10-22T10:20:20.327 回答
0

我自己得到了解决方案。只需更改 Cake Lib 中电子邮件功能的核心行为。打开 \lib\Cake\Network\Email\MailTransport.php 并编辑第 47 行,如下所示

$this->_mail($to, str_replace(array("\r","\n"), "", $email->subject()), $message, $headers, $params);

因此,基本更改是从主题文本中删除“换行”和“回车”。每当我们的主题文本超过 75 个字符时,框架会自动在主题文本中换行,这在发送电子邮件时不起作用。

于 2013-10-24T14:53:47.463 回答