Skip to content

Mailgun client compatible with all versions of PHP and only requires cURL

License

Notifications You must be signed in to change notification settings

bulldogcreative/mailgun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Simple PHP Mailgun Client

Build Status

While Mailgun does an excellent job at implementing the adapter pattern, coding to an interface, using PSR, and other things, this package does not. The curl extension is the only requirement for this package.

I often found myself needing a quick, simple solution for sending email when using PHP. I love Mailgun, but always felt like their PHP client included too many features for what I needed to do. So I wrote a very limited API client that only does one thing, and it does it well.

Installation

composer require bulldog/mailgun

Usage

Basic Usage

<?php
use Bulldog\Mailgun;
$mg = new Mailgun('mg.your-domain.com', 'key-tops3cretk3y');
$mg->send('[email protected]', '[email protected]', 'Important Subject', 'Your message.');

Advanced Usage

The fifth param for the send method accepts an array. In that array you can add any of the params listed in the Mailgun docs. So if you need to cc someone, you would:

<?php
use Bulldog\Mailgun;
$mg = new Mailgun('mg.your-domain.com', 'key-tops3cretk3y');
$mg->send('[email protected]', '[email protected]', 'Important Subject', 'Your message.', [
    'cc' => '[email protected]',
]);

Or if you wanted to send an email, you could do the following:

<?php
use Bulldog\Mailgun;
$mg = new Mailgun('mg.your-domain.com', 'key-tops3cretk3y');
$mg->send('[email protected]', '[email protected]', 'Important Subject', 'Your message.', [
    'html' => '<html><head></head><body><h1>Hi there</h1></body></html>',
]);

You can add as many additional params as you need.

<?php
use Bulldog\Mailgun;
$mg = new Mailgun('mg.your-domain.com', 'key-tops3cretk3y');
$mg->send('[email protected]', '[email protected]', 'Important Subject', 'Your message.', [
    'cc' => '[email protected]',
    'v:important' => 'true',
    'o:tag' => 'client_x_email',
]);

https://documentation.mailgun.com/en/latest/api-sending.html#sending

Compatibility

This package will work with, and tested on the following PHP versions:

  • 5.5
  • 5.6
  • 7.0
  • 7.1
  • 7.2
  • 7.3

You must have the curl extension installed to use this package.

Contributions

Always welcome! Just keep it simple, please. Open an issue for discussion, then fork the repo, create a topic branch, and do a pull request. We can figure everything else out later.

About

Mailgun client compatible with all versions of PHP and only requires cURL

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages