clivern-imap/README.md

89 lines
3.3 KiB
Markdown
Raw Normal View History

2017-08-08 13:03:22 +02:00
Imap
====
:mailbox_with_mail: Access Mailbox Using PHP IMAP.
2017-08-12 12:56:59 +02:00
*Current Version: coming soon*
[![Build Status](https://travis-ci.org/Clivern/Imap.svg?branch=master)](https://travis-ci.org/Clivern/Imap)
Installation
------------
2017-08-14 14:18:20 +02:00
To install the package via `composer`, use the following:
2017-08-12 12:56:59 +02:00
```php
2017-08-14 14:28:37 +02:00
composer require clivern/imap
2017-08-12 12:56:59 +02:00
```
Usage
-----
After adding the package as a dependency, Please read the following steps:
2017-08-14 14:18:20 +02:00
First configure connection class.
```php
include_once dirname(__FILE__) . '/vendor/autoload.php';
$connection = new Clivern\Imap\Core\Connection("imap.gmail.com", "993", "test@clivern.com", "my_password", "/ssl", "INBOX");
$connection->connect();
```
To add custom search
```php
$search = new Clivern\Imap\Core\Search();
$search->addCondition(new Clivern\Imap\Core\Search\Condition\All());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Answered());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\BCC("filter@gmail.com"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Before(date("j F Y")));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Body("search text"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\CC("filter@gmail.com"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Deleted());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Flagged());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\From("filter@gmail.com"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Keyword("test"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\NewFlag());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Old());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\On(date("j F Y")));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Recent());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Seen());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Since(date("j F Y")));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Subject("search text"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\Text("search text"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\To("filter@gmail.com"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\UnAnswered());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\UnDeleted());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\UnFlagged());
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\UnKeyword("test"));
// $search->addCondition(new Clivern\Imap\Core\Search\Condition\UnSeen());
// For more info, please check http://php.net/manual/en/function.imap-search.php
```
Then configure mailbox:
```php
$mailbox = new Clivern\Imap\MailBox($connection);
$messages = $mailbox->getMessages($search);
foreach ($messages as $message) {
echo "Subject: " . $message->header()->get('subject');
echo "<br/>";
echo $message->body()->getMessage();
}
```
2017-08-12 12:56:59 +02:00
Misc
====
Changelog
---------
Version 1.0.0:
```
Coming Soon
```
Acknowledgements
----------------
© 2017, Clivern. Released under the [MIT License](http://www.opensource.org/licenses/mit-license.php).
**Imap** is authored and maintained by [@clivern](http://github.com/clivern).