2014-02-08 112 views
2

当我使用SMTP发送邮件时,像PHP致命错误:require_once():无法打开所需的'Mail.php'(include_path ='。:/ usr/share/pear:/ usr/share/php')

PHP Fatal error: require_once(): Failed opening required 'Mail.php' (include_path='.:/usr/share/pear:/usr/share/php') in ...

我该如何调试?我已经正确安装了PEAR模块。 安装了PEAR名单

Installed packages, channel pear.php.net: 
========================================= 
Package   Version State 
Archive_Tar  1.3.11 stable 
Console_Getopt 1.3.1 stable 
HTML_Common  1.2.5 stable 
HTML_Page2  0.6.3 beta 
Mail    1.2.0 stable 
PEAR    1.9.4 stable 
Structures_Graph 1.0.4 stable 
XML_Util   1.2.1 stable 

不需要安装任何其他的梨相关性?

在此先感谢

+0

您需要在系统上找到Mail.php('pear list-files Mail'),并确定它不是我的包含路径。请注意,您的包含路径在cli和web之间可能会有所不同。 – AD7six

+0

嗨..谢谢reply.when我试试这个(pear list-files Mail)php /home/ec2-user/pear/share/pear/Mail.php和include_path是:/ usr/share/pear:/ usr/share/php – Rajaraman

+0

需要更改包含路径吗? – Rajaraman

回答

0

忽略梨信息。

您需要找到Mail.php的正确路径。

如果是在同一个文件夹,然后它会是这样的:

require_once('Mail.php') 

如果没有,则使用绝对路径。 EG:

require_once('/var/www/Mail.php') 

或任何相对路径是:

require_once('directory/Mail.php') 
+2

-1。不知道你的意思是“忽略梨信息” - Mail.php来自梨包。需要绝对路径可能会在下一个pear include语句中失败。 – AD7six

+0

在运行PHP的Linux系统上,如果你有一个带有破损路径的require_once(),你通常会在错误信息中得到梨引用。修复文件路径通常可以解决问题,而无需安装其他Pear模块或依赖关系。 – Grant

+0

“梨参考”是否意味着错误信息中的包含路径?如果是这样:不开玩笑。 '邮件1.2.0稳定'Mail.php是一个梨模块。有关示例用法,请参见[文档](http://pear.php.net/manual/en/package.mail.mail.factory.php)。 Btw要求不是一个函数(它不需要/不应该有括号)。 – AD7six

相关问题