ricard0d/php-imap

PHP IMAP 客户端

3.2.3 2022-06-08 16:57 UTC

README

Latest release on Packagist Latest prerelease on Packagist Software License Build Status Total Downloads Hits Discord Snyk

描述

PHP-IMAP 是一个不需要安装/启用 php-imap 模块的通用 IMAP 通信包装器。协议完全集成,因此支持 IMAP IDLE 操作和“新”OAuth 认证过程。您可以通过启用 php-imap 模块来处理边缘情况、提高消息解码质量,如果您想使用像 pop3 这样的旧协议,则此模块是必需的。

官方文档: php-imap.com

Laravel 包装器: webklex/laravel-imap

Discord: discord.gg/jCcZWCSq

目录

文档

基本使用示例

这是一个基本示例,它将输出所有 IMAP 文件夹中的所有邮件,并将每条消息移动到 INBOX.read 中。请注意,这不应该在实际生活中进行测试,它只是为了展示工作原理。

use Webklex\PHPIMAP\ClientManager;

$cm = new ClientManager('path/to/config/imap.php');

/** @var \Webklex\PHPIMAP\Client $client */
$client = $cm->account('account_identifier');

//Connect to the IMAP Server
$client->connect();

//Get all Mailboxes
/** @var \Webklex\PHPIMAP\Support\FolderCollection $folders */
$folders = $client->getFolders();

//Loop through every Mailbox
/** @var \Webklex\PHPIMAP\Folder $folder */
foreach($folders as $folder){

    //Get all Messages of the current Mailbox $folder
    /** @var \Webklex\PHPIMAP\Support\MessageCollection $messages */
    $messages = $folder->messages()->all()->get();
    
    /** @var \Webklex\PHPIMAP\Message $message */
    foreach($messages as $message){
        echo $message->getSubject().'<br />';
        echo 'Attachments: '.$message->getAttachments()->count().'<br />';
        echo $message->getHTMLBody();
        
        //Move the current Message to 'INBOX.read'
        if($message->move('INBOX.read') == true){
            echo 'Message has been moved';
        }else{
            echo 'Message could not be moved';
        }
    }
}

已知问题

支持

如果您遇到任何问题或发现任何错误,请不要犹豫,创建一个新的 问题。但是请注意,可能需要一些时间才能得到答复。无关、粗鲁或侮辱性的问题将被无通知删除。

如果您需要 商业 支持,请随时给我发邮件至 github@webklex.com

注意事项

如果您在问题中编写源代码,请考虑正确格式化它。这会使阅读变得容易得多
并且人们更有可能进行评论和帮助 :)

```php

echo 'your php code...';

```

将变为

echo 'your php code...'; 

功能 & 提交请求

每个人都可以为此项目做出贡献。每个拉取请求都将被考虑,但也可能被拒绝。
为了避免不必要的劳动,如果您计划进行较大的更改,请考虑先创建一个 功能问题
。当然,如果您只是希望添加一个功能,也可以创建一个新的 功能问题 ;)

变更日志

有关最近更改的更多信息,请参阅 CHANGELOG

安全

如果您发现任何安全相关的问题,请通过电子邮件 github@webklex.com 而不是使用问题跟踪器。

致谢

许可证

MIT 许可证(MIT)。有关更多信息,请参阅 许可证文件