2014-12-02 55 views
0

我想通过网站/联系人使用PHPMailer发送电子邮件。在我的actionContact我有代码:使用PHPMailer与yii2

require '/../../common/phpmailer/PHPMailerAutoload.php'; 
//Create a new PHPMailer instance 
$mail = new PHPMailer; 
... 

我把所有的东西都放在common/phpmailer目录中。在高级模板的根文件夹中的“常用”目录中。我收到提示

Class 'backend\controllers\PHPMailer' not found 

这样在yii1工作得很好,但不是在yii2

+0

不能因为PHPMailer类不是SiteController的一部分。 PHPMailer是在文件class.phpmailer.php中的高级yii2模板common/phpmailer文件夹 – 2014-12-02 17:28:58

回答

2

你应该在你的文件的顶部做一个

use [NAMESPACE]/PHPMailer; 

而且自带的Yii已经与swiftmailer,如果你不想使用它,你总是可以只安装一个新的邮件

这已经那些附带的PHPMailer在包中。它还带有一个cronjob,因为你不想直接发送邮件,通常需要很长时间。
https://packagist.org/packages/rmrevin/yii2-postman

这种那些集成了警予更好地为组件
http://www.yiiframework.com/extension/zyx-phpmailer/

我个人使用Mailchimp因为它使得发送电子邮件容易,我不小心调试邮件服务器时,事情没有确定或当你被放在垃圾邮件列表中。

+0

嗨,你可以详细说明[NAMESPACE]应该用什么?谢谢 – Chisskarzz 2017-04-24 14:02:56