【发布时间】:2013-09-05 10:14:27
【问题描述】:
我有一个 PHP 函数来发送电子邮件,
function sendemail($email_to,$email_from,$email_subject,$email_body,$email_replyto,$cc)
{
if(filter_var($email_to, FILTER_VALIDATE_EMAIL))
{
require_once "/usr/local/lib/php/Mail.php";
$from = $email_from;
$to = $email_to;
$subject = $email_subject;
$body = $email_body;
$host = "mail.domain.co.uk";
$username = "sending@domain.co.uk";
$password = "********";
$headers = array ('From' => $from,
'To' => $to,
'Cc' => $cc,
'Subject' => $subject,
'Content-type' => 'text/html');
$smtp = Mail::factory('smtp',
array ('host' => $host,
'auth' => true,
'username' => $username,
'password' => $password));
$rec = $to.', '.$cc;
$mail = $smtp->send($rec, $headers, $body, $cc);
}
}
当我调用函数时,有时没有$cc 变量,所以我收到一条警告说Missing argument 6 for sendemail(),
如果 $cc 无效,停止警告的最佳方法是什么?
【问题讨论】:
-
不要停止警告。请改用默认值。
-
向我们展示实际功能。或许您可以将函数重新定义为
$cc=null,从而给它一个默认值,但除非我们能看到函数的实际内容,否则我们无法肯定地推荐它。