从Phalcon发送邮件[复制]

This question already has an answer here:

Im trying to send email from localhost with phalcon but its not working. i tested this way in codeigniter and its working properly but faild in phalcon. whats mt wrong? please! im figure it like this: First paste library from https://github.com/asyamedya/phalcon-phpmailer in to my app dir. then- load libraryDir in loader.php.

[controller]
    public function feedsAction()
{

    //require 'http://localhost/demo/app/library/PHPMailerAutoload.php';

    $mail = new PHPMailer;

    //$mail->SMTPDebug = 3;                               // Enable verbose debug output

    $mail->isSMTP();                                      // Set mailer to use SMTP
    $mail->Host = 'smtp1.example.com;smtp2.example.com';  // Specify main and backup SMTP servers
    $mail->SMTPAuth = true;                               // Enable SMTP authentication
    $mail->Username = 'user@example.com';                 // SMTP username
    $mail->Password = 'secret';                           // SMTP password
    $mail->SMTPSecure = 'tls';                            // Enable TLS encryption, `ssl` also accepted
    $mail->Port = 587;                                    // TCP port to connect to

    $mail->setFrom('from@example.com', 'Mailer');
    $mail->addAddress('joe@example.net', 'Joe User');     // Add a recipient
    $mail->addAddress('ellen@example.com');               // Name is optional
    $mail->addReplyTo('info@example.com', 'Information');
    $mail->addCC('cc@example.com');
    $mail->addBCC('bcc@example.com');

    $mail->addAttachment('/var/tmp/file.tar.gz');         // Add attachments
    $mail->addAttachment('/tmp/image.jpg', 'new.jpg');    // Optional name
    $mail->isHTML(true);                                  // Set email format to HTML

    $mail->Subject = 'Here is the subject';
    $mail->Body    = 'This is the HTML message body <b>in bold!</b>';
    $mail->AltBody = 'This is the body in plain text for non-HTML mail clients';

    if(!$mail->send()) {
        echo 'Message could not be sent.';
        echo 'Mailer Error: ' . $mail->ErrorInfo;
    } else {
        echo 'Message has been sent';
    }
} 
</div>

There is no mail component in Phalcon, you should use an external library for mailing.

There are lots of options to choose from, including swiftmailer and phpmailer.

According to manual as fo version 4.2.3 of PHP:

The additional_parameters parameter is disabled in safe_mode and the mail() function will expose a warning message and return FALSE when used.

So your code of:

$postMail = mail($to, $subject, $msg, $headers, "-f $from");

is probably ending with false value which drowns you into else case.

PS: if it's not a case, please share your built $headers and $from vars.