1 回答

TA贡献1796条经验 获得超4个赞
您正在使用 swiftmailer 以避免需要自己设置标题。您可以发送带有您需要的标题的邮件,如下所示:
$from_name = "Some One";
$from_address = "def@abc.com";
$to_name = "Soem Two";
$to_address = "xyz@abc.com";
$date = '20190905';
$startTime = '13:20:00';
$endTime = '19:00:00';
$subject = "Standup Meeting";
$description = "The purpose of the meeting is to discuss works done and inprogress";
$location = "acfr ffs";
$domain = 'my.com';
/**
* @var \yii\swiftmailer\Message $mail
*/
$mail=Yii::$app->mailer->compose()
->setFrom([$from_address => $from_name])
->setReplyTo([$from_address => $from_name])
->setSubject($subject)
->setTo([$to_address => $to_name]);
$mail->addHeader('Content-class', 'urn:content-classes:calendarmessage');
//Create Email Body (HTML)
$message = "<html>\n";
$message .= "<body>\n";
$message .= '<p>Dear '.$to_name.',</p>';
$message .= '<p>'.$description.'</p>';
$message .= "</body>\n";
$message .= "</html>\n";
$ical = 'BEGIN:VCALENDAR' . "\r\n" .
... skipped the body for better readability ...
'END:VCALENDAR'. "\r\n";
$swiftMail = $mail->getSwiftMessage();
$swiftMail->setContentType('multipart/alternative');
$swiftMail->addPart($message, 'text/html');
$swiftMail->addPart(
$ical,
'text/calendar;name="meeting.ics";method=REQUEST',
null
);
$mail->send();
如果您不需要这个特定的标题并且您的目标只是发送日历事件,您可以让它变得更加简单
$from_name = "Some One";
$from_address = "def@abc.com";
$to_name = "Soem Two";
$to_address = "xyz@abc.com";
$date = '20190905';
$startTime = '13:20:00';
$endTime = '19:00:00';
$subject = "Standup Meeting";
$description = "The purpose of the meeting is to discuss works done and inprogress";
$location = "cfrt hjd";
$domain = 'my.com';
$mail=Yii::$app->mailer->compose()
->setFrom([$from_address => $from_name])
->setReplyTo([$from_address => $from_name])
->setSubject($subject)
->setTo([$to_address => $to_name]);
//Create Email Body (HTML)
$message = "<html>\n";
$message .= "<body>\n";
$message .= '<p>Dear '.$to_name.',</p>';
$message .= '<p>'.$description.'</p>';
$message .= "</body>\n";
$message .= "</html>\n";
$ical = 'BEGIN:VCALENDAR' . "\r\n" .
... skipped the body for better readability ...
'END:VCALENDAR'. "\r\n";
$mail->setHtmlBody($message);
$mail->attachContent(
$ical,
[
'contentType' => 'text/calendar;name="meeting.ics";method=REQUEST'
]
);
$mail->send();
- 1 回答
- 0 关注
- 111 浏览
添加回答
举报