PHP 8.4: IMAP 扩展从 PHP 核心移到 PECL
PHP 的 IMAP 扩展提供了使用 IMAP 协议操作邮箱的功能。该扩展所依赖的底层的 C 库自 2018 年开始没有接收到新的更新。
IMAP 扩展也出现一些其他问题:
- 缺乏线程安全。PHP-ZTS 编译无法编译此扩展。
- 缺乏 XAUTH 授权支持。
- POP 功能的 Bug.
自 PHP 8.4,IMAP 扩展不再是 PHP 核心的部件,被移到 PECL。IMAP 扩展仍然可以从 PECL 中进行安装,但考虑到扩展的已知问题,建议转移到下面列出的替代库。
PHP 8.4 不再支持 --with-imap
和 --with-imap-ssl
配置标志。将其传递到 ./configure
脚本将产生警告:
configure: WARNING: unrecognized options: --with-imap
configure: WARNING: unrecognized options: --with-imap-ssl
IMAP 扩展的替代方案
考虑到 IMAP 扩展的问题性质,不建议使用 IMAP 扩展。需要简单升级路径的现有/遗留 PHP 应用仍然可以从 PECL 安装 IMAP 扩展。
Webklex/php-imap 是 imap 协议的 php 实现,带有 OOP API,可能是 imap 扩展的更可行的替代品。