在mac os sierra和MAMP上安装php Imap

时间:2017-04-28 22:32:27

标签: php imap mamp

我尝试在我的本地主机上编辑网络应用,但收到以下错误:Call to undefined function imap_open()

我相信这是因为我可能没有在我的localhost上安装或激活imap。我目前正在运行Mac OS Sierra和MAMP(不是MAMP Pro)

我在网上找到了一些适用于旧版Mac OS或使用Brew的东西,但我不使用brew,这是否有必要让imap处理我的设置?有人可以帮助我,所以我不会遇到这些imap问题吗?

2 个答案:

答案 0 :(得分:0)

我在PHP.ini文件中也设置了extension = imap.so,但是仍然不支持IMAP。我终于找到了对我有用的方法,并希望对您的情况也适用。

接下来要确定的是,在同一PHP.ini文件中正确设置了extension_dir。我的设置为MAMP_extension_dir_MAMP。我没有看到此变量的设置位置。我将其替换为“ /Applications/MAMP/bin/php/php5.3.29/lib/php/extensions/no-debug-non-zts-20090626/”,现在当我查找phpinfo()页面时,发现IMAP是已启用。

将php5.3.29替换为您的php版本,并将no-debug-non-zts-20090626替换为您在扩展程序文件夹中看到的任何文件夹名称。

答案 1 :(得分:0)

这是一个古老的问题,但这可能会对某人有所帮助。

使用<?php phpinfo(); ?>检出following files是否  指向相同的路径。 php.ini也没有注释extension=imap.so行。最后,在Additional .ini fields parsed中,您应该看到IMAP位置,如果那里没有任何内容,则意味着php没有加载IMAP。

就我而言,我在终端中运行此程序来对其进行修复:

brew tap kabel/php-ext
brew install php-imap
brew install php@7.1-imap