SwiftMailerでRFC違反のメールアドレスでもメールを送信したい
Symfony2の標準メールライブラリはSwift_Mailerが使われている。
メール送信を試していたが、どうも送信前にメールアドレスのチェックを行うらしくRFC違反しているメールアドレスだと例外が投げられて送れない…
例外が投げられる部分は下記の箇所
vendor/swiftmailer/lib/classes/Swift/Mime/Headers/MailboxHeader.php
private function _assertValidAddress($address) { if (!preg_match('/^' . $this->getGrammar()->getDefinition('addr-spec') . '$/D', $address)) { throw new Swift_RfcComplianceException( 'Address in mailbox given [' . $address . '] does not comply with RFC 2822, 3.6.2.' ); } }
とりあえずこのチェックを回避するオプションはないっぽいので、throwの部分をコメントアウトして強制的に送るしかないっぽい