send方法总是返回0

时间:2015-04-21 14:05:28

标签: php email symfony smtp swiftmailer

我正在使用swift_mailer处理发送电子邮件,我遇到的问题是电子邮件未发送,send方法的返回值始终等于零。

应用程序/配置/ config.yml

swiftmailer:
   transport: smtp
   host:      <host>  # of the company
   username:  <username> # of the company
   password:  <password> # of the company
   port: 25

应用程序/配置/ config_test.yml

swiftmailer:
    disable_delivery: true
    # disable_delivery: ~ # tried with this too

控制器

$mailer = $this->get('mailer');
$message = $mailer->createMessage()
    ->setSubject('You have Completed Registration!')
    ->setFrom('send@example.com')
    ->setTo('valid_email@Iswear.fr')
    ->setBody(
        'hello world!!',
        'text/plain'
    )

var_dump($mailer->send($message, $failed), $failed); exit;

输出:

int(0)
array(0) {
}

我知道send会返回电子邮件发送给的人数。为什么电子邮件永远不会发送? 鉴于我确定我要发送的唯一电子邮件地址。

UPDATE1:

我想知道如何进一步调试。

2 个答案:

答案 0 :(得分:2)

如果要实现测试环境邮件程序,请不要使用disable_delivery 这完全禁用了swiftmailer的发送 使用

# app/config/config_dev.yml
swiftmailer:
      disable_delivery: false
      delivery_address: dev@example.com # some test or development email account

答案 1 :(得分:0)

也许您的配置中有错误。尝试使用logger进行调试输出: http://swiftmailer.org/docs/plugins.html#logger-plugin