addRecipients使用push_array,但它不起作用。我在这里做错了什么?
在class.emailer.php中
class Emailer
{
public $sender;
public $recipients;
public $subject;
public $body;
function __construct($sender)
{
$this->sender = $sender;
$this->recipients = array();
}
public function addRecipients($recipient)
{
array_push($this->recipients, $recipient);
}
public function setSubject($subject)
{
$this->subject = $subject;
}
public function setBody($body)
{
$this->body = $body;
}
public function sendEmail()
{
echo "From sendEmail, send email initiated
";
echo "Body: ".$this->body."
";
echo "Subject: ".$this->subject."
";
print_r ($this->sender);
print_r ($this->recipients);
echo "
";
foreach ($this->recipients as $recipient)
{
echo "6
";
//$result = mail($recipient, $this->subject, $this->body,"From: {$this->sender}\r\n");
echo "7
";
if ($result) echo "Mail successfully sent to {$recipient}
";
}
}}
并在class.extendedemailer.php
include_once("class.emailer.php");
class ExtendedEmailer extends emailer
{
function __construct(){
//overwriting __contruct here
}
public function setSender($sender)
{
$this->sender = $sender;
}
}并在sendemail.php
include_once("class.extendedemailer.php");
echo "start 1
";
$xemailer = new ExtendedEmailer();
echo "1. adding sender:
";
$xemailer->setSender("sender@mywebsite.com");
print_r ($xemailer->sender);
echo "
2. adding recipients:
";
$xemailer->addRecipients("recipientemail@gmail.com");
var_dump ($xemailer->recipients);
echo "
3. adding subject:
";
$xemailer->setSubject("Just a Test
");
print_r ($xemailer->subject);
echo "4. adding body
";
$xemailer->setBody("Hi, How are you?
");
print_r ($xemailer->body);
echo "5. sending email
";
$xemailer->sendEmail();收件人的输出是NULL。
start 1
1. adding sender:
sender@mywebsite.com
2. adding recipients:
NULL
3. adding subject:
Just a Test
4. adding body
Hi, How are you?
5. sending email
From sendEmail, send email initiated
Body: Hi, How are you?
Subject: Just a Test