yii框架中的PHP邮件程序

时间:2017-01-16 11:26:32

标签: php yii phpmailer

我在yii框架工作中使用php邮件程序, 有人可以请求如何在yii框架模型中包含php邮件文件来发送邮件吗?

以下是我的代码,但它正在抛出错误

Yii::$app->db->createCommand("update merchant_master set code='$code' where id='$mid'")->execute();

include(Url::base()."/PHPMailer/class.PHPMailer.php");
include(Url::base().'/PHPMailer/class.smtp.php');
include(Url::base().'/PHPMailer/PHPMailerAutoload.php');

$name= 'Test';
$mail_id ='dev3@mdcconcepts.in';
$idd = 'booking-ticket1475748775322';
$url='<a href="http://www.mdcfestival.com/book-now/uploads/'.$mid.'.pdf" target="_blank">here</a>'; 

return $sendmail = 'dev3@mdcconcepts.in';   
$message="Name:".$name."\r\n";
$message .=" ";
$message .= "EmailId:".$mail_id."\r\n";
$message .=" ";
$message .= "You can get your tickets by clicking this URL: ".$url."\r\n";
$email = new PHPMailer();
$email->From      = 'dev1@mdcconcepts.in';
$email->FromName  = 'MDCFestival';
$email->Subject   = 'MDCFestival Tickets';
$email->Body      = $message;
$email->AddAddress($sendmail);

//$email->AddAttachment($file_name);
if($email->Send()) {
    echo 11;
} else {
    echo 00;
}

2 个答案:

答案 0 :(得分:2)

您可以将PHPMailer文件保存在供应商目录中。

您需要将它包含在main.php和console.php

中的导入数组中
'import'=>array(
    'application.vendor.PHPMailer.*',

然后你可以在控制器

中将其称为以下内容
$mail = new PHPMailer(true);

或Yii 1和Yii 2有扩展名,您可以轻松配置和开始发送电子邮件。

Yii 1 - http://www.yiiframework.com/extension/phpmailer/

Yii 2 - http://www.yiiframework.com/extension/zyx-phpmailer/

答案 1 :(得分:0)

这条线完全没有意义:

return $sendmail = 'dev3@mdcconcepts.in';

代码永远不会超越这一点。将其更改为:

$sendmail = 'dev3@mdcconcepts.in';

您还应该阅读PHPMailer自述文件,该自述文件将告诉您如何加载类文件;使用 one :composer(首选),自动加载器或手动加载类。