justinkbruce / utilities
该软件包最新版本(0.024)没有提供许可证信息。
utilities
0.024
2020-05-18 08:57 UTC
Requires
- ext-imap: *
- jms/serializer: 1.7.*
Requires (Dev)
- codeception/codeception: ^3.0
- phpdocumentor/phpdocumentor: ^2.0.5
This package is auto-updated.
Last update: 2024-09-29 05:48:39 UTC
README
如何创建单元测试
vendor\bin\codecept g:test unit <testName>
测试代码
vendor\bin\codecept run
运行文档
重要:在运行文档之前,您需要安装 graphviz 并将其路径添加到系统路径中 - https://graphviz.gitlab.io/about/
有关文档化代码的更多信息 - https://phpdoc.org
vendor/bin/phpdoc -d classes/ -t documentation/
For windows:
vendor\bin\phpdoc -d classes\ -t documentation\
如何使用代码
打开 IMAP 流
$emailReader = new \Utilities\EmailReader("host", "username", "password", "port number (optional: default is 993)");
$mailBox = $emailReader->openMailBox("flags" (optional: default is "/imap/ssl"));
获取可供选择的邮箱文件夹数组
$folders = $emailReader->getMailBoxFolders();
从返回的数组中打开所需的邮箱文件夹
使用返回的文件夹数组选择要打开的邮箱文件夹
$mailBoxFolder = $emailReader->openMailBoxFolder($folders[0]);
获取所选邮箱文件夹中所有邮件的标题
$headers = $emailReader->getMailBoxHeaders($mailBoxFolder);
读取邮箱文件夹中的所选邮件
从邮箱文件夹中选择要读取的邮件编号
$messageNumber = 418
$email = $emailReader->getMessageData($messageNumber, $mailBoxFolder);
将附件存放到指定的目录位置
如果邮件中包含要下载的附件:使用上述方法提供邮件以及您想要附件下载到的有效目录路径
$directory = "C:\\Users\\user\\Downloads\\";
$emailReader->dumpAttachments($email, $directory);
设置邮件状态
使用预定义的常量设置邮件标志:EMAIL_SEEN, EMAIL_FLAGGED, EMAIL_DELETED, EMAIL_DRAFT 或 EMAIL_ANSWERED
$messageNumberSequence = 2;
$emailReader->setMessageStatus($messageNumberSequence, EMAIL_SEEN);
清除邮件状态
使用预定义的常量清除邮件标志:EMAIL_SEEN, EMAIL_FLAGGED, EMAIL_DELETED, EMAIL_DRAFT 或 EMAIL_ANSWERED
$messageNumberSequence = 2;
$emailReader->setMessageStatus($messageNumberSequence, EMAIL_SEEN);
将邮件移动或复制到不同的邮箱文件夹
重要:某些电子邮件服务器在移动邮件到特定文件夹之前需要设置特定的标志。例如:在 Gmail 服务器上,为了将邮件移动到草稿文件夹 ([Gmail]/Drafts),首先需要将邮件标记为 "\Draft"
移动
$messageNumberSequence = 2;
$emailReader->messageMove($messageNumberSequence, $folders[2]);
复制
$messageNumberSequence = 2;
$emailReader->messageCopy($messageNumberSequence, $folders[2]);
删除邮箱文件夹中的邮件
$messageNumber = 2;
$emailReader->messageDelete($messageNumber);
搜索邮件
搜索包含特定标准的邮件编号
返回包含搜索标准的邮件编号数组。搜索标准的列表可在此处找到:https://php.ac.cn/manual/en/function.imap-search.php
$searchCriteria = "SUBJECT \"test\"";
$searchResults = $emailReader->search($searchCriteria);
获取搜索结果邮件的标题
需要初始搜索的结果,并返回所有搜索邮件的标题
$searchResultHeaders = $emailReader->getSearchResultHeaders($searchResults);