marat00016/laravel-imap

Laravel IMAP 客户端

dev-master / 1.0.x-dev 2022-10-15 16:56 UTC

This package is auto-updated.

Last update: 2024-09-15 21:12:38 UTC


README

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

描述

Laravel IMAP 是一种简单的方式,将本地的 php-imap 模块和扩展的自定义 imap 协议集成到您的 Laravel 应用中。这使得您的应用不仅能够响应新邮件,还可以读取和解析现有邮件以及更多。

官方文档:php-imap.com/frameworks/laravel

Discord:discord.gg/jCcZWCSq

目录

文档

安装

此库需要 mbstringmcrypt php 模块。如果它们不可用,请确保安装或启用它们。

sudo apt-get install php*-mbstring php*-mcrypt

通过 composer 安装

composer require webklex/laravel-imap

有关故障排除、旧版支持和包发布等更多信息,请参阅:php-imap.com/frameworks/laravel/installation

基本用法示例

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

/** @var \Webklex\PHPIMAP\Client $client */
$client = Webklex\IMAP\Facades\Client::account('default');

//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 ben moved';
        }else{
            echo 'Message could not be moved';
        }
    }
}

已知问题

支持

如果您遇到任何问题或发现任何错误,请毫不犹豫地创建一个新的 问题。但是请注意,可能需要一些时间才能得到回复。

无关主题、粗鲁或攻击性的问题将被无通知删除。

如果您需要 即时商业 支持,请随时通过 github@webklex.com 发送邮件。

注意事项

如果您在问题中编写源代码,请考虑正确格式化。这会使代码更容易阅读,人们也更愿意评论和帮助 :)
and people are more likely to comment and help :)

```php

echo 'your php code...';

```

将转换为

echo 'your php code...'; 

功能 & 提交请求

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

变更日志

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

安全

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

鸣谢

许可

MIT 许可证 (MIT)。请参阅许可证文件获取更多信息。