Location: PHPKode > scripts > S-mail > S_mail.php
<?php

/**
 * Description of S_mail
 *
 * @author DiogoDelSanto
 * hide@address.com
 *
 * Esta é uma classe simples para enviar e-mail, pode ser alterada e redistribuida,
 * caso alguém a aprimore, por favor, enviar o resultado para meu e-mail:
 * hide@address.com
 *
 * This is a simple class to send e-mail, can be modified and redistributed,
 if someone else improves, please send the result to my email:
 * hide@address.com
 */
class S_mail {

private $remetente;
private $arDestinatario;
private $arCC;
private $arBCC;
private $titulo;
private $texto;
private $headers;

function __construct() {

}

function  __destruct() {
        
}

//está função envia o e-mail, porém é necessário que já tenham sido setados
//os destinatários e remetente.

//this function sends the email, but you must have already been sets
//sender and recipients.

function sendMail(){
$to = $this->formatarRemetentes();
$subject = $this->titulo;
$message = $this->texto;
$this->headers .= "From: ".$this->getRemetente()."\r\n";
$this->headers .= "Reply-To: ".$this->getRemetente()."\r\n";
if(count($this->arCC) > 0){
$this->headers .= "Cc: ".$this->formatarCC()."\r\n";
}
if(count($this->arBCC) > 0){
$this->headers .= "Bcc: ".$this->formatarBCC()."\r\n";
}
$this->fimHeaders();

$chek .= $to.'<br>';
$chek .= $subject.'<br>';
$chek .= $message.'<br>';
$chek .= $this->headers.'<br>';


$retorno = mail($to, $subject, $message, $this->headers);
if($retorno){
return true;
}else{
return false;
}
}

//está função finaliza os headers do e-mail
//this function terminates the headers of the email
function fimHeaders(){
$this->headers .= "MIME-Version: 1.0\n";
$this->headers .= "Content-Type: text/plain; charset=\"iso-8859-1\"\n";

}

//esta função torna o e-mail de alta prioridade
//this function give high-priority for e-mail
function setPriority(){
$this->headers .= "X-Priority: 1 (Higuest)\n";
$this->headers .= "X-MSMail-Priority: High\n";
$this->headers .= "Importance: High\n";
}

//esta função formata os header do e-mail
//this function format the header of the e-mail
function formatarRemetentes(){
$retorno = '';
$ultimoDestinatario = count($this->arDestinatario) -1;
if(count($this->arDestinatario) > 0){
for ($i = 0;
$i < count($this->arDestinatario);
$i++) {
if($i == $ultimoDestinatario){
$retorno .= $this->arDestinatario[$i];
}else{
$retorno .= $this->arDestinatario[$i].', ';
}
}

}
return $retorno;
}

//esta função formata os CC do e-mail
//this function format the CC of the e-mail
function formatarCC(){
$retorno = '';
$ultimoDestinatario = count($this->arCC) -1;
if(count($this->arCC) > 0){
for ($i = 0;
$i < count($this->arCC);
$i++) {
if($i == $ultimoDestinatario){
$retorno .= $this->arCC[$i];
}else{
$retorno .= $this->arCC[$i].', ';
}
}

}
return $retorno;
}

//esta função formata os BCC do e-mail
//this function format the BCC of the e-mail
function formatarBCC(){
$retorno = '';
$ultimoDestinatario = count($this->arBCC) -1;
if(count($this->arBCC) > 0){
for ($i = 0;
$i < count($this->arBCC);
$i++) {
if($i == $ultimoDestinatario){
$retorno .= $this->arBCC[$i];
}else{
$retorno .= $this->arBCC[$i].', ';
}
}

}
return $retorno;
}

//sets e gets
//sets and gets

function setHeaders($header){
$this->headers = $header."\n";

}

function getHeaders(){
return $this->headers;
}

function setRemetente($remetente){
$this->remetente = $remetente;
}

function getRemetente(){
return $this->remetente;
}

function setDestinatario($destinatario){
$this->arDestinatario[count($this->arDestinatario)] = $destinatario;
}

function getDestinatario(){
return $this->arDestinatario;
}

function setCC($cc){
$this->arCC[count($this->arCC)] = $cc;
}

function getCC(){
return $this->arCC;
}

function setBCC($bcc){
$this->arBCC[count($this->arBCC)] = $bcc;
}

function getBCC(){
return $this->arBCC;
}

function setTitulo($titulo){
$this->titulo = $titulo;
}

function getTitulo(){
return $this->titulo;
}

function setTexto($texto){
$this->texto = $texto;
}

function getTexto(){
return $this->texto;
}

}
?>
Return current item: S-mail