在Zend Framework中发送邮件显示异常

时间:2013-02-01 06:39:55

标签: php zend-framework wamp sendmail

我正在尝试在localhost上的zend框架中发送一封电子邮件。

以下是我的代码:

$mail = new Zend_Mail('utf-8');
        $mail->addTo($email);
        $mail->setSubject('Welcome');
        $mail->setFrom('test@user.com', 'test@user.com');
        $mail->setBodyText($bodyText);
        $sent = true;

        // Send the email
        try {
            $mail->send();
        } catch (Exception $e) {
            echo "<pre>";
            print_r($e);
            exit;
            $sent = false;
        }
        return $sent;

但它显示以下异常:

  

[message:protected] =&gt;无法发送邮件。 mail()[function.mail]:   无法连接到“localhost”端口25的邮件服务器,请验证您的   php.ini中的“SMTP”和“smtp_port”设置或使用ini_set()

以下是我在php.ini中的设置

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP = localhost
; http://php.net/smtp-port
smtp_port = 25


; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = test@user.com

我正在使用PHP版本5.3.9,Wampserver 2.2。

如何解决此错误?

1 个答案:

答案 0 :(得分:2)

尝试此链接如何使用localhost发送邮件

//Prepare email
$mail = new Zend_Mail();
$mail->addTo($email);
$mail->setSubject($subject);
$mail->setBody($message);
$mail->setFrom('username@gmail.com', 'User Name');

//Send it!
$sent = true;
try {
    $mail->send();
} catch (Exception $e){
    $sent = false;
}

//Do stuff (display error message, log it, redirect user, etc)
if($sent){
    //Mail was sent successfully.
} else {
    //Mail failed to send.
}

或尝试此链接Sending email using Zend Framework and PHP