2014-12-02 42 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