Interface yii\mail\MailerInterface

Implemented byyii\mail\BaseMailer
可用自版本2.0
源代码 https://github.com/yiisoft/yii2/blob/master/framework/mail/MailerInterface.php

MailerInterface is the interface that should be implemented by mailer classes.

A mailer should mainly support creating and sending mail messages. It should also support composition of the message body through the view rendering mechanism. For example,

Yii::$app->mailer->compose('contact/html', ['contactForm' => $form])
    ->setFrom('from@domain.com')
    ->setTo($form->email)
    ->setSubject($form->subject)
    ->send();

参见 yii\mail\MessageInterface.

公共方法

隐藏继承的方法

方法描述定义在
compose() Creates a new message instance and optionally composes its body content via view rendering. yii\mail\MailerInterface
send() Sends the given email message. yii\mail\MailerInterface
sendMultiple() Sends multiple messages at once. yii\mail\MailerInterface

方法详情

compose() public abstract 方法

Creates a new message instance and optionally composes its body content via view rendering.

public abstract yii\mail\MessageInterface compose ( $view null, array $params = [] )
$view string|array|null

The view to be used for rendering the message body. This can be:

  • a string, which represents the view name or path alias for rendering the HTML body of the email. In this case, the text body will be generated by applying strip_tags() to the HTML body.
  • an array with 'html' and/or 'text' elements. The 'html' element refers to the view name or path alias for rendering the HTML body, while 'text' element is for rendering the text body. For example, ['html' => 'contact-html', 'text' => 'contact-text'].
  • null, meaning the message instance will be returned without body content.
$params array

The parameters (name-value pairs) that will be extracted and made available in the view file.

return yii\mail\MessageInterface

Message instance.

send() public abstract 方法

Sends the given email message.

public abstract boolean send ( $message )
$message yii\mail\MessageInterface

Email message instance to be sent

return boolean

Whether the message has been sent successfully

sendMultiple() public abstract 方法

Sends multiple messages at once.

This method may be implemented by some mailers which support more efficient way of sending multiple messages in the same batch.

public abstract integer sendMultiple ( array $messages )
$messages array

List of email messages, which should be sent.

return integer

Number of messages that are successfully sent.