我在Mac OS X上使用MAMP 2.1.1(不是MAMP Pro)。我想写一些PHP代码来发送HTML电子邮件。
我已经安装了mail,mail_mime和net_smtp。当我尝试在http://pear.php.net/manual/en/package.mail.mail.send.php上找到的示例时,我总是得到“500内部服务器错误”。我检查了php_error.log,它说“PHP致命错误:未找到类'邮件'”。我试过了
<?php
require_once('Mail.php');
var_dump(class_exists('Mail', false));
?>
它返回bool(false)bool(false)
我检查了所有文件和路径,一切似乎都很好。我在ubuntu服务器上尝试了相同的代码,一切都很好。
有谁能告诉我如何解决这个问题?
答案 0 :(得分:0)
今年我清理安装的Mountain Lion,我现在正在使用内置的apache,php和mysql而不是MAMP。但是我发现这个问题在我目前的环境中仍然存在。
但我有一个不完美的解决方案可以使代码工作。我在调用require / require_once之前放了这行:
ini_set('include_path', ini_get('include_path') . ':/usr/lib/php/pear');
然后邮件功能可以工作。
如果没有此行,我机器上的包含路径为.:/usr/local/php5/lib/php
。您可以看到问题是由不正确的路径引起的。由于某种原因,PEAR安装在不同的路径中,并且php.ini设置不正确。
您可以在自己的计算机上试用此解决方案。首先找出您的梨安装路径,然后相应地更改该行并将其放入您的代码中。
希望这个解决方案可以给你一点提示。如果你能分享更好的解决方案,我将不胜感激!