php - : pear mail package 验证失败

标签 php email pear

<?php

    require_once "Mail.php";

    $from = '<from.gmail.com>';
    $to = '<to.yahoo.com>';
    $subject = 'Hi!';
    $body = "Hi,\n\nHow are you?";

    $headers = array(
        'From' => $from,
        'To' => $to,
        'Subject' => $subject
    );

    $smtp = Mail::factory('smtp', array(
            'host' => 'ssl://smtp.gmail.com',
            'port' => '465',
            'auth' => true,
            'username' => 'johndoe@gmail.com',
            'password' => 'passwordxxx'
        ));

    $mail = $smtp->send($to, $headers, $body);

    if (PEAR::isError($mail)) {
        echo('<p>' . $mail->getMessage() . '</p>');
    } else {
        echo('<p>Message successfully sent!</p>');
    }

?>

但是,该程序在 $mail = $smtp->send($to, $headers, $body); 处失败:

validation failed: johndoe@gmail.com

我已确认电子邮件和密码正确无误。如果我提供无效密码,错误将更改为

incorrect password

我也尝试过在我的帐户上禁用两步验证,但这没有帮助。请告知为什么我可能会在凭据看起来正确的情况下收到此验证错误?

最佳答案

当您在您或收件人的电子邮件中使用无效字符作为电子邮件别名时,通常会收到“验证失败”。

例如:

my_email@gmail.com <first_name.last_name>
my_email@gmail.com <first_name@last_name>

无效字符是:

. (dots)
@ (at)
" (double quotes)
[ (bracket opened without closing)
] (bracket closed without opening)
( (parenthesis opened without closing)
) (parenthesis closed without opening)

关于php - : pear mail package 验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24996659/

相关文章:

command-line - 通过短信下棋

php - 将旧站点从 DB 更新到 MDB2 连接,出现大量调用未定义函数错误

php - 为什么 PHP pear 即使使用正确的包含路径也不能工作?

php - 如何在 php 中执行模式为数组的 preg_match?

未安装 PHP 解释器 (Linux)

python - Django 不发送关于 500 错误的消息

html - 如何自定义Supabase电子邮件?

php -\n 对比 PHP_EOL 对比 <br>?

php - 建模人员/公司角色

mysql - MDB2、Pear、Mysql 错误