drakonli/php-imap

PHP OOP 库,通过 IMAP 扩展访问 POP3/IMAP/NNTP 邮箱

dev-master 2016-12-11 17:25 UTC

This package is not auto-updated.

Last update: 2024-09-14 19:47:34 UTC


README

PHP IMAP 是什么?

基本上,它是 IMAP 库的一个面向对象的包装。它旨在用于面向对象的工程,并提供它自己的依赖注入容器(Dependency Injection Symfony 组件)。

该项目使用 SPL 类型,因为分支项目是为 PHP 7 之前的 PHP 版本创建的,因此没有返回类型和标量提示。

要求

如何使用

以下示例来自我的 php-imap 示例 存储库

  1. 创建连接
  2. 将服务注入到您的客户端(如 RepositoryInterface)。您可以在 此处 找到所有服务,以及它们的 依赖配置
  3. 将实例化的连接传递给服务以执行任何类型的 IMAP 操作。

现在,最有趣的部分是如何创建连接。有多种方法可以实现。这些方法取决于您希望如何实例化连接方法以及您对 标志选项参数 及其值的了解程度。

  1. 如果您对它们一无所知,您可能只想使用 工厂和构建器 来创建自己的连接和连接配置。为此,我建议为每个您想创建 IMAP 连接的服务创建一个实现 PreDefinedConnectionFactoryInterface工厂(因为连接设置基本上是相同的,只有登录密码和邮箱地址不同)。例如,Gmail。
  1. 如果您了解它们,请使用 依赖注入工厂方法 来创建连接并将其直接注入到客户端。为此,您需要使用 ConnectionFactoryInterface::createConnectionNonStrict。请注意,尽管该接口非严格,但内部会实例化 SplTypes 和 Flags-、Params-、Options- 集合。
  1. 您还可以使用ConnectionFactoryInterface在客户端直接使用严格(构建器、工厂等)和非严格(常量)语法创建连接。但是,我建议不要这样做:)

并查看parameters.yml文件,它将帮助您更好地理解服务配置。

祝您玩得开心:)