PHPMailer出现错误,调用未定义方法PHPMailer :: SetFrom()。

5

嗨,我正在使用PHPMailer发送一些简单的电子邮件,但是SetFrom()函数似乎不起作用,即使我使用的代码直接来自phpmails文档(http://phpmailer.worxware.com/index.php?pg=examplebmail)

这是我的错误信息:

Call to undefined method PHPMailer::SetFrom()

以及我的脚本

require_once('inc/phpmailer/class.phpmailer.php');
$mail = new PHPMailer(); // defaults to using php "mail()"
$body = $message;
$mail->SetFrom('tell-a-friend@domain.com', 'tell a friend');
$mail->AddAddress($to_email, $to);
$mail->Subject = "tell a friend";
$mail->MsgHTML($body);
$mail->Send();

您好,以下是您需要翻译的内容:

有什么想法吗?

编辑

事实证明,在我的phpmailer版本中不存在SetFrom()函数,我可以使用以下方式设置这些值

$mail->From = '';
$mail->FromName = '';
2个回答

9

注意,有多个版本的PHPMailer。我从来没有完全理解哪个是哪个。无论如何,这个下载的PHPMailer 5.1版本中肯定包含一个setFrom方法:

  public function SetFrom($address, $name = '',$auto=1) {   

2
原来函数SetFrom()不存在(正如错误所述),但是我可以通过使用$mail->From = 'x';来设置变量$From和$FromName。 - dotty
1
@dotty 你可能在使用不同(旧)版本的PHPMailer。 - Pekka

0

我同意Pekka的观点;我从这里下载了PHPMailer,使用了您的代码(好吧,我分配了$to_email、$to和$message变量),提交成功。

尝试使用Pekka建议的版本或这个版本,希望您的问题会消失。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接