1

我对 PHP 有点陌生,所以我现在开始使用 Pear,我想在其中使用 PHPUnit 和其他东西。

我遇到了一些错误,我一直在通过互联网寻找解决它,我发现很多人都有同样的问题,但有不同的解决方案来解决它。我想通过 PHP 发送一条消息并获取结果以查看它是否已成功发送,我一直在查看教程:http ://www.youtube.com/watch?v=UH90nGNXab0

这是代码:

    <?php
require_once "Mail.php";
$from = "picnicrus.ahmadhammad@gmail.com";
$to = "ahmadnassr@gmail.com";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";

$host = "ssl://smtp.gmail.com";//"smtp.gmail.com";
$port = "465";//"587";
$username = "picnicrus.ahmadhammad";
$password = "1234432112344321";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp =@ Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = @$smtp->send($to, $headers, $body);

if (@PEAR::isError($mail)) {
echo("<p>" . $mail->getMessage() . "</p>");
} else {
echo("<p>Message successfully sent!</p>");
}
?>

我不断收到此警告:require_once(Mail.php) [function.require-once]: failed to open stream: No such file or directory in C:\wamp\www\MailSender\MailSender.php on line 2

紧随其后的是这个致命错误:require_once() [function.require]: Failed opening required 'Mail.php' (include_path='.;C:\wamp\bin\php\php5.3.10\pear') in C:\wamp \www\MailSender\MailSender.php 在第 2 行

所以,我的结论是:

1)我的php.ini中的包含路径不正确(include_path =“.;C:\wamp\bin\php\php5.3.10\pear”)我在apache中的php.ini中的include_path也是(include_path =“ .;C:\wamp\bin\php\php5.3.10\pear") 所以我想知道它是否可能是错误的?

2) 或者安装的包不正确,我下载了“Mail”,包含以下文件:mail.php、mime.php、mimePart.php、mock.php、null.php、RFC822.php、sendmail.php、smtp。 php,smtpmx.php。

该目录位于“C:\wamp\bin\php\php5.3.10\pear”中。

问候阿列克谢因

4

1 回答 1

2

您是否安装了邮件包?听起来您手动下载了文件。如果您尚未安装该软件包,请从命令提示符运行以下命令:

pear install Mail

这应该将 Mail 包放入正确的 pear 库文件夹中,该文件夹应该已经在您的 include_path 中。

于 2012-05-05T15:26:32.990 回答