1 回答

TA貢獻1895條經驗 獲得超7個贊
您無法獲得第 3 方庫來實現您的接口,因此您需要編寫一些包裝類,例如
use PHPMailer\PHPMailer\PHPMailer;
class PHPMailerWrapper implements MailerInterface {
private $mail;
public function __construct(PHPMailer $mail) {
$this->mail = $mail;
// mailer could be configured here or prior to being passed in here
}
public function send($message) {
// super simple example, I don't know PHPMailer very well
$this->mail->body = $message;
return $this->mail->send();
}
}
您需要為您希望支持的任何其他實現做類似的事情。
然后,您將創建這些實現之一的實例并將其傳遞給您的SomeClass構造函數,例如
$mailer = new PHPMailerWrapper($phpMailerInstance);
$someObj = new SomeClass($mailer);
- 1 回答
- 0 關注
- 152 瀏覽
添加回答
舉報