php - 在 PHP 中使用 imap 函数而无需重建和重新安装

标签 php installation imap

我希望最新的 PHP 版本可以在新的 Macbook 上使用,但默认情况下 php 安装不包括 imap 函数。我需要一个特定的函数——即“imap_rfc822_parse_headers”函数,但我不想为此重新编译、构建和安装 PHP(更不用说预先安装 c-client 和 imap.so 所花费的精力) .我担心复杂的程序(我发现的每个程序都有些不同)可能会弄乱我当前的安装,这绝不是容易设置的。

有没有其他更简单的方法可以将 imap 安装到 PHP 中?与此相关,对于我需要的功能,是否有基于类的替代方案?

最佳答案

我终于找到了解决方案。大部分都在这里: http://www.september28.co.uk/blog/2011/11/24/php-imap-support-in-mac-os-x-lion-without-recompiling-php/

我的机器是 2011 年末的 Macbook Pro,配备 MacOSX 10.7.4、PHP 5.4。通过这些说明安装:http://www.hirmet.com/mac-os-x-lion-upgrade-to-php-5-4

对于那些具有相似或相同设置的用户,这是一个循序渐进的步骤:

从这个网址下载imap源码,关注最近日期不以“Z”结尾的那个:ftp://ftp.cac.washington.edu/imap/

解压,进入文件夹,运行以下命令:

$ make osx EXTRACFLAGS="-arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp"

上述命令会向您发出一堆警告,但应该会成功完成,这与 september28 博文中最初建议的命令不同。

接下来,执行以下操作:

$ sudo cp c-client/*.h /usr/local/include/
$ sudo cp c-client/*.c /usr/local/lib/
$ sudo cp c-client/c-client.a /usr/local/lib/libc-client.a

完成此操作后,如果您像我一样进行了自定义升级(根据答案中的第二个链接),请进入下载的 php 源文件夹,并为您的系统构建 imap.so 扩展。如果您没有构建自定义版本,只需下载您已安装版本的 PHP 源代码并使用它,这没有关系。

$ cd ~/Downloads/Php-5.4.4/ext/imap
$ phpize
$ ./configure --with-imap==/usr/local/imap-2007 --with-kerberos --with-imap-ssl
$ make

完成后,执行以下操作:

$ sudo cp modules/imap.so /usr/lib/php/extensions/no-debug-non-zts-20100525/

...或者如果您的 PHP 扩展文件夹不同,请将其放入(您可以在 phpinfo(); 中看到该位置)

重新启动 apache,您就可以开始了。

$ sudo apachectl restart

关于php - 在 PHP 中使用 imap 函数而无需重建和重新安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11158162/

相关文章:

delphi - 如何从某个 IMAP 邮箱获取所有电子邮件的正文?

php - 2 人游戏的 SQL 数据库结构

php - 计算并连接 MySQL 条目

php - 更新到 PHP 7 后出现 CodeIgniter CI_Exceptions::show_exception 错误

php - 多个元键和元值搜索

Windows 7 64 位和 Apache 下的 PHP 和 CURL

c# - 显示来自 C# AfterInstall 事件的错误消息

java - 从 JavaMail 消息中预取预览文本

php - 描述 MySQL 在 Windows 上的安装的网站

php - 阅读电子邮件的完整标题