1

我正在使用 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();

编辑:另外,这种行为/语法叫什么,所以我可以学习它?

4

1 回答 1

1

这是方法链的一个例子。每个函数调用(除了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();
于 2012-12-07T05:03:22.917 回答