php pear mail extension提出了严格的通知

时间:2013-05-01 21:04:48

标签: php error-handling pear

注意虽然你们中的一些人似乎有不同的看法,但这并不是PHP: PEAR mail message error的重复。这个问题询问如何压制严格的通知,我毫不费力。在我重新开启错误报告之后,我的问题与稍后的行为(我的代码末尾的最后error_reporting调用)有关。

我正在发送带有php的pear邮件扩展名的邮件。为了避免在调用其函数时引发的严格通知,我在使用它时关闭了严格的错误报告。但是,在我重新开启严格错误报告后,会报告已避免的通知。

以下是代码:

<?php
include_once "Mail.php"; /*from pear.php.net*/

error_reporting(E_ERROR);

$from = "some@emailaddress";
$to = "another@emailaddress";
$subject = "test email";
$body = "body of email";

$headers = array (
  "From" => $from,
  "To" => $to,
  "Subject" => $subject);

$smtp = Mail::factory("smtp",
  array (
    "host" => "badhost",
    "port" => "badport",
    "auth" => true,
    "username" => "baduser",
    "password" => "badpw"));

$mail = $smtp->send($to, $headers, $body);

/*if this line is commented out "goodbye" is all that is returned.
if it is left in, the return is "goodbye" followed by three "strict standards"
notices*/  
error_reporting(E_ALL);

die("goodbye");

?> 

这比其他任何事情都更加恶化。也许Pear的破坏方法正在提出通知。

如果能够重新打开完整的错误报告,有关如何使它们不显示的任何想法?

类似的通知提出三次:

严格标准:非静态方法PEAR :: isError()不应该静态调用,假设$ this来自C:\ wamp \ bin \ php \ php5.4.3 \ pear \ Net \ SMTP.php中的不兼容上下文第491行

0 个答案:

没有答案