Giter VIP home page Giter VIP logo

mailer's Introduction

Phalcon\Ext\Mailer

Mailer wrapper over SwiftMailer for Phalcon.

Installing

Install composer in a common location or in your project:

curl -s http://getcomposer.org/installer | php

Create the composer.json file as follows:

{
	"require": {
		"phalcon-ext/mailer": "~2.0"
	}
}

Run the composer installer:

php composer.phar install

Add in your the code

require_once('vendor/autoload.php');

Configure

SMTP

$config = [
    'driver' 	 => 'smtp',
    'host'	 	 => 'smtp.gmail.com',
    'port'	 	 => 465,
    'encryption' => 'ssl',
    'username'   => '[email protected]',
    'password'	 => 'your_password',
    'from'		 => [
    		'email' => '[email protected]',
    		'name'	=> 'YOUR FROM NAME'
    	]
];

Warning If you are using GMAIL and get error ...Username and Password not accepted... or password incorrect, please using password token (how get token?) and fix in configuration

  ...

  'username' => '[email protected]',
  'password' => 'your_password_token',

  ...

Sendmail

$config = [
    'driver' 	 => 'sendmail',
	'sendmail' 	 => '/usr/sbin/sendmail -bs',
    'from'		 => [
    	'email' => '[email protected]',
    	'name'	=> 'YOUR FROM NAME'
    ]
];

PHP Mail

$config = [
    'driver' 	 => 'mail',
    'from'		 => [
    	'email' => '[email protected]',
    	'name'	=> 'YOUR FROM NAME'
    ]
];

Example

createMessage()

$mailer = new \Phalcon\Ext\Mailer\Manager($config);

$message = $mailer->createMessage()
		->to('[email protected]', 'OPTIONAL NAME')
		->subject('Hello world!')
		->content('Hello world!');

// Set the Cc addresses of this message.
$message->cc('[email protected]');

// Set the Bcc addresses of this message.
$message->bcc('[email protected]');

// Send message
$message->send();

createMessageFromView()

Warning If you want to use as a template engine VOLT (.volt), please setup "view" service according to the official docs Phalcon

/**
 * Global viewsDir for current instance Mailer\Manager.
 * 
 * This parameter is OPTIONAL, If it is not specified, 
 * use DI from "view" service (getViewsDir)
 */
$config['viewsDir'] = __DIR__ . '/views/email/';

$mailer = new \Phalcon\Ext\Mailer\Manager($config);

// view relative to the folder viewsDir (REQUIRED)
$viewPath = 'email/example_message';

// Set variables to views (OPTIONAL)
$params [ 
	'var1' => 'VAR VALUE 1',
	'var2' => 'VAR VALUE 2',
	...
	'varN' => 'VAR VALUE N',
];

/**
 * The local path to the folder viewsDir only this message. (OPTIONAL)
 * 
 * This parameter is OPTIONAL, If it is not specified, 
 * use global parameter "viewsDir" from configuration.
 */
$viewsDirLocal = __DIR__ . '/views/email/local/';


$message = $mailer->createMessageFromView($viewPath, $params, $viewsDirLocal)
		->to('[email protected]', 'OPTIONAL NAME')
		->subject('Hello world!');

// Set the Cc addresses of this message.
$message->cc('[email protected]');

// Set the Bcc addresses of this message.
$message->bcc('[email protected]');

// Send message
$message->send();

Events

  • mailer:beforeCreateMessage
  • mailer:afterCreateMessage
  • mailer:beforeSend
  • mailer:afterSend
  • mailer:beforeAttachFile
  • mailer:afterAttachFile

mailer's People

Contributors

korsar-zn avatar ovr avatar zzplab avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.