\SmtpEmail

Clase que permite el envío de correo electrónico vía SMTP.

Summary

Methods
Properties
Constants
isSmtpConfigured()
defaultFrom()
__construct()
setFrom()
setSubject()
setWordWrap()
addAttachment()
addAttachments()
addCustomHeaderField()
addCustomHeaderFields()
addTos()
addCcs()
addBccs()
isHtml()
setBody()
setAltBody()
send()
getMail()
sendEmail()
No public properties found
No constants found
fireException()
No protected properties found
N/A
No private methods found
No private properties found
N/A

Methods

isSmtpConfigured()

isSmtpConfigured() : boolean

¿Está configurado en la aplicación el uso de SMTP?

Returns

boolean

defaultFrom()

defaultFrom() : string

Devuelve la dirección que se usa para la cabecera From si no se indica una explícitamente.

Returns

string

__construct()

__construct() 

Usa los parámetros de configuración <var>XGAP_CONF_SMTP_HOST</var>, <var>XGAP_CONF_SMTP_PORT</var>, <var>XGAP_CONF_SMTP_USER</var>, <var>XGAP_CONF_SMTP_PASS</var>, <var>XGAP_CONF_SMTP_SECURITY</var>.

Throws

\ExcepcionXGAP

si no {@link isSmtpConfigured() es correcta} la configuración de SMTP

setFrom()

setFrom(string  $from_email, string  $from_name = '', string  $replyto_email = null, string  $replyto_name = null, string  $sender_email = null) : \SmtpEmail

Establece el valor para las cabeceras From y Reply-To, y el MAIL FROM (Return-Path)

Parameters

string $from_email

dirección de email para el From

string $from_name

nombre para el From

string $replyto_email

dirección de email para el Reply-To; si es vacío, se usa $from_email

string $replyto_name

nombre para el Reply-To; si es vacío, se usa $from_name

string $sender_email

dirección de email para el Return-Path; si es vacío, se usa $from_email

Throws

\ExcepcionXGAP

Returns

\SmtpEmail

este objeto

setSubject()

setSubject(string  $subject) : \SmtpEmail

Establece el asunto.

Parameters

string $subject

Returns

\SmtpEmail

este objeto

setWordWrap()

setWordWrap(integer  $columns) : \SmtpEmail

Establece la cantidad de caracteres para aplicar retorno automático de palabras; no se aplica si es menor que 1.

Parameters

integer $columns

Returns

\SmtpEmail

este objeto

addAttachment()

addAttachment(string  $path, string  $name = '', string  $type = 'application/octet-stream', string  $encoding = 'base64') : \SmtpEmail

Agrega un archivo adjunto.

Parameters

string $path

ruta del archivo

string $name

nombre opcional para el adjunto

string $type

tipo del archivo

string $encoding

codificación a usar

Throws

\ExcepcionXGAP

Returns

\SmtpEmail

este objeto

addAttachments()

addAttachments(array  $attachments) : \SmtpEmail

Agrega varios archivos adjuntos.

Cada elemento de $attachments puede ser un array o un string.

Si es un array, debe tener la siguiente estructura: array( 'path' => '', // [obligatorio] ruta del archivo 'name' => '', // [opcional, default ''] nombre para el adjunto 'type' => <'type>', // [opcional, default 'application/octet-stream'] tipo del archivo 'encoding' => '' // [opcional, default 'base64'] codificación a usar )

Si es un string, indica la ruta del archivo y los parámetros restantes toman los valores por defecto; es decir que $attachments[$i] = '/ruta/al/archivo' es equivalente a $attachments[$i] = array('path' => '/ruta/al/archivo')

Parameters

array $attachments

lista de adjuntos

Throws

\ExcepcionXGAP

Returns

\SmtpEmail

este objeto

addCustomHeaderField()

addCustomHeaderField(string  $name, string  $value) : \SmtpEmail

Agrega un campo personalizado a la cabecera del email.

Parameters

string $name

nombre del campo

string $value

valor del campo

Returns

\SmtpEmail

este objeto

addCustomHeaderFields()

addCustomHeaderFields(array  $fields) : \SmtpEmail

Agrega una lista de campos personalizados a la cabecera del email.

Parameters

array $fields

un array con el formato array('nombre campo 1' => 'valor campo 1', ...)

Returns

\SmtpEmail

addTos()

addTos(array|string  $tos) : \SmtpEmail

Agrega uno o más destinatarios a la lista de 'To:'.

No tiene efecto si $tos es vacío,

Parameters

array|string $tos

destinatarios a enviar como 'To:'; este parámetro puede ser a) un string con la dirección de email (ej: 'destinatario@destino.net') o b) un array donde cada elemento puede ser un string con la dirección o un par {dirección, nombre} con la estructura array('email' => dirección, 'name' => nombre) (ej: array('destinatario1@destino.net', array('email' => 'destinatario2@destino.net', 'name' => 'Segundo Destinatario'), ...)

Throws

\ExcepcionXGAP

Returns

\SmtpEmail

este objeto

addCcs()

addCcs(array|string  $ccs) : \SmtpEmail

Agrega uno o más destinatarios a la lista de 'CC:'.

No tiene efecto si $ccs es vacío,

Parameters

array|string $ccs

destinatarios a enviar como 'CC:'; permite el mismo formato que el parámetro $tos de {@link addTos()}

Throws

\ExcepcionXGAP

Returns

\SmtpEmail

este objeto

addBccs()

addBccs(array|string  $bccs) : \SmtpEmail

Agrega uno o más destinatarios a la lista de 'BCC:'.

No tiene efecto si $bccs es vacío,

Parameters

array|string $bccs

destinatarios a enviar como 'BCC:'; permite el mismo formato que el parámetro $tos de {@link addTos()}

Throws

\ExcepcionXGAP

Returns

\SmtpEmail

este objeto

isHtml()

isHtml() : boolean

¿El mensaje se debe enviar en formato HTML?

Returns

boolean

setBody()

setBody(string  $body, boolean  $is_html = false) : \SmtpEmail

Establece el contenido del cuerpo del mensaje.

Puede ser texto plano o HTML.

Parameters

string $body

cuerpo del mensaje

boolean $is_html

¿está dado en formato HTML?

Returns

\SmtpEmail

este objeto

setAltBody()

setAltBody(string  $alt_body) : \SmtpEmail

Establece el cuerpo del email en formato sólo-texto, que se usa como cuerpo alternativo cuando se envía en formato HTML.

Sólo se utiliza si se \isHtml().

Parameters

string $alt_body

Returns

\SmtpEmail

este objeto

send()

send() 

Envía el correo electrónico.

Throws

\ExcepcionXGAP

getMail()

getMail() : \PHPMailer

Devuelve la instancia de PHPMailer que se usa en este objeto.

Returns

\PHPMailer

sendEmail()

sendEmail(string  $from_email, string  $subject, array|string  $tos, string  $body, string  $from_name = '', array|string  $ccs = null, array|string  $bccs = null, string  $alt_body = null, string  $replyto_email = null, string  $replyto_name = null, string  $sender_email = null, boolean  $is_html = false, integer  $wordwrap = 70, array  $attachments = null, array  $custom_header_fields = null) 

Envía un correo electrónico.

Parameters

string $from_email

dirección de email para el From

string $subject

asunto

array|string $tos

destinatarios a enviar como 'To:'; la descripción del formato se puede consultar en {@link addTos()}

string $body

cuerpo del mensaje; puede ser texto plano o HTML

string $from_name

nombre para el From

array|string $ccs

destinatarios a enviar como 'CC:'; la descripción del formato se puede consultar en {@link addTos()}

array|string $bccs

destinatarios a enviar como 'BCC:'; la descripción del formato se puede consultar en {@link addTos()}

string $alt_body

cuerpo del email en formato sólo-texto, que se usa como cuerpo alternativo cuando se envía en formato HTML

string $replyto_email

dirección de email para el Reply-To; si no se provee, se usa $from_email

string $replyto_name

nombre para el Reply-To; sólo se tiene en cuenta si también se provee $replyto_email

string $sender_email

dirección de email para el Return-Path; si no se provee, se usa $from_email

boolean $is_html

¿se debe enviar en formato HTML?

integer $wordwrap

cantidad de caracteres para aplicar retorno automático de palabras; no se aplica si es menor que 1

array $attachments

archivos a adjuntar; la descripción del formato se puede consultar en {@link addAttachments()}

array $custom_header_fields

lista de campos personalizados a agregar a la cabecera; la descripción del formato se puede consultar en {@link addCustomHeaderFields()}

Throws

\ExcepcionXGAP

si hay algún error

fireException()

fireException(string  $msg, \Exception  $original_exception) 

Parameters

string $msg
\Exception $original_exception