mohrekopp / php-mailhog-client
dev-master
2017-10-03 23:36 UTC
Requires
- php: >=7.0
- ext-curl: *
- ext-json: *
- ext-mbstring: *
- doctrine/collections: ^1.4
- php-http/client-implementation: ^1.0
- php-http/discovery: ^1.0
- php-http/httplug: ^1.0
- php-http/message-factory: ^1.0
- psr/http-message: ^1.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ~1.12
- guzzlehttp/psr7: ^1.0
- php-http/message: ^1.0
- php-http/mock-client: ^1.0
- phpunit/phpunit: ^6.0
- squizlabs/php_codesniffer: ~2.6
- swiftmailer/swiftmailer: ^6.0
- symfony/dotenv: ^3.3
This package is not auto-updated.
Last update: 2024-09-23 08:05:16 UTC
README
基于 HTTPlug 的 Mailhog-API (v2) 的 PHP 客户端
安装
composer require mohrekopp/php-mailhog-client
由于 HTTPlug 只是一个抽象层,您需要安装一个客户端或适配器,例如 CURL-client
composer require php-http/curl-client
或 Guzzle6-适配器
composer require php-http/guzzle6-adapter
使用方法
<?php require_once 'vendor/autoload.php'; use Mohrekopp\MailHogClient\MailHogClient; use Mohrekopp\MailHogClient\SearchCriteria; # Instantiate client $client = new MailHogClient('https://:8025'); # Retrieve all messages $messages = $client->getMessages(); # Iterate over messages foreach ($messages as $message) { $message->getBody(); $message->getSubject(); } # Search for messages based on subject or body content $criteria = SearchCriteria::createContainingCriteria('Content for searching'); $messages = $client->searchMessages($criteria); # Search for messages sent *from* bob@example.com $criteria = SearchCriteria::createSentByCriteria('bob@example.com'); $client->searchMessages($criteria); # Search for messages sent *to* alice@example.com $criteria = SearchCriteria::createSentToCriteria('alice@example.com'); $client->searchMessages($criteria);
测试
运行单元测试
composer run test-unit
运行功能测试
- 您必须安装一个 HTTPlug-客户端
composer require php-http/curl-client
- 复制 .env.dist 文件并启动 Mailhog 的 docker 容器
cp .env.dist .env
docker-compose up -d
- 用测试数据填充 Mailhog 并运行测试
composer run test-seed-mailhog
composer run test-functional
许可协议
MIT 许可协议 (MIT)。请参阅 许可文件 获取更多信息。