Go to file
2017-08-15 15:58:49 +02:00
examples add skelton 2017-08-08 13:03:22 +02:00
src simple fix 2017-08-15 15:28:00 +02:00
tests search test case updated 2017-08-12 13:23:30 +02:00
.editorconfig add skelton 2017-08-08 13:03:22 +02:00
.gitignore stats class updated 2017-08-10 12:17:50 +02:00
.travis.yml add skelton 2017-08-08 13:03:22 +02:00
composer.json update composer.json file 2017-08-08 13:08:21 +02:00
composer.lock add skelton 2017-08-08 13:03:22 +02:00
LICENSE Initial commit 2017-08-08 11:30:32 +02:00
phpunit.xml.dist add skelton 2017-08-08 13:03:22 +02:00
README.md README updated 2017-08-15 15:58:49 +02:00

Imap

📬 Access Mailbox Using PHP IMAP.

Current Version: coming soon

Build Status

Installation

To install the package via composer, use the following:

composer require clivern/imap

This command requires you to have Composer installed globally.

Usage

After adding the package as a dependency, Please read the following steps:

Connect and Authenticate

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();

Connection Options

#~

Mailboxes

Retrieve mailboxes (also known as mail folders) from the mail server and iterate over them:

$mailbox = new Clivern\Imap\MailBox($connection);

$messages = $mailbox->getMessages();

foreach ($messages as $message) {
	echo "Subject: " . $message->header()->get('subject');
	echo "<br/>";
	echo $message->body()->getMessage();
}

Searching

To add custom search

$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:

$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();
}

Messages

#~

Misc

Changelog

Version 1.0.0:

Coming Soon

Acknowledgements

© 2017, Clivern. Released under the MIT License.

Imap is authored and maintained by @clivern.