我正在使用Eoghan的PHP Simple Mail脚本来发送电子邮件。我有一个应用程序,它有两个文件字段,一个是可选的。我需要附加两个文件,只有两者都提供。
但对象格式奇怪:
$send = $mailer->setTo('eoghan@example.com', 'John Smith')
->setSubject('Test Message')
->setFrom('no-reply@domain.com', 'Domain.com')
->send();
我不知道如何将其分解为多行。现在,对于面向对象的事情,我无法理解这一切。
我认为它是这样的?
$send = $mailer->setTo($_TO_EMAIL, $_TO_NAME)
->setSubject($_SUBJECT)
->setFrom($_FROM_EMAIL, $_FROM_NAME);
// If true, send the mail
if ($my_var) $send .= $mailer->send();
编辑:此外,这种行为/语法是什么叫,所以我可以学习它?
答案 0 :(得分:1)
这是method chaining的一个例子。每个函数调用(send()
除外)都返回对$mailer
对象的引用。它在功能上等同于:
$mailer->setTo('john@example.com', 'John Smith');
$mailer->setSubject('Test Message');
$mailer->setFrom('no-reply@domain.com', 'Domain.com');
$send = $mailer->send();
要回答你的问题,最后应该是这样的:
if ($my_var) $send = $mailer->send();