Conn2Flow
Navegação das docs

Referência / Bibliotecas

Biblioteca comunicacao.php

Envio de e-mail por SMTP (PHPMailer) com o layout de e-mails do site, destinatários, anexos e imagens embutidas; e a página de impressão.

Caminho no Gestor bibliotecas/comunicacao.php

Todo e-mail que o Gestor envia (cadastro, recuperação de senha, 2FA, formulários) passa por comunicacao_email(), que usa o PHPMailer incluído em gestor/bibliotecas/PHPMailer/. A biblioteca também tem comunicacao_impressao().

Configuração

Do .env (variáveis globais): EMAIL_ACTIVE, EMAIL_HOST, EMAIL_USER, EMAIL_PASS, EMAIL_PORT, EMAIL_SECURE, EMAIL_FROM(_NAME) e EMAIL_REPLY_TO(_NAME). Com EMAIL_ACTIVE=false, comunicacao_email() não envia e devolve false.

Enviar

gestor_incluir_biblioteca('comunicacao');
$ok = comunicacao_email([
    'destinatarios' => [
        ['email' => 'ana@exemplo.com', 'nome' => 'Ana'],
        ['email' => 'arquivo@exemplo.com', 'tipo' => 'bcc'],
    ],
    'mensagem' => [
        'assunto' => 'Pedido recebido',
        'html' => '<p>Olá, #nome#!</p>',
        'htmlVariaveis' => [['variavel' => '#nome#', 'valor' => htmlspecialchars($nome)]],
        'htmlAssinaturaAutomatica' => true,
        'anexos' => [['caminho' => '/tmp/pedido.pdf', 'nome' => 'pedido.pdf', 'tmpCaminho' => '/tmp/pedido.pdf']],
    ],
]);
Parâmetro
destinatarios[] email, nome e tipo (cc, bcc ou vazio para o destinatário normal)
mensagem.assunto / html Assunto e corpo HTML
mensagem.htmlTitulo O <title> do e-mail (padrão: o assunto)
mensagem.htmlVariaveis Lista de ['variavel', 'valor'] trocadas no HTML final (sem escape)
mensagem.htmlLayoutID Id de um componente que substitui o html como corpo
mensagem.htmlAssinaturaAutomatica Acrescenta o componente layout-emails-assinatura
mensagem.htmlCompleto HTML pronto: pula o layout
mensagem.anexos[] caminho, nome, tmpCaminho (apagado depois do envio)
mensagem.imagens[] caminho, cid, nome, imagemTmpCaminho: imagens embutidas, referenciadas no HTML por cid:
remetente de, deNome, responderPara, responderParaNome: sobrescrevem o .env
servidor hospedeiro, usuario, senha, porta, seguro, debug: sobrescrevem o .env
EMAIL_TESTS + EMAIL_* Envio de teste com credenciais passadas na hora, mesmo com o e-mail desligado (é o que o admin-environment usa)

O layout

Sem htmlCompleto, o corpo entra no layout layout-emails: o CSS dele vai num <style>, e os marcadores <!-- mail#titulo -->, <!-- mail#css --> e <!-- mail#corpo --> são trocados. Depois vêm as htmlVariaveis e as variáveis globais (@[[…]]@). Para mudar a cara de todos os e-mails do site, edite esse layout. O texto alternativo (sem HTML) é fixo em português.

Retorno e erros

Devolve true se o servidor aceitou a mensagem e false em qualquer outro caso: e-mail desligado, erro de conexão, destinatário inválido. O motivo vai para gestor/logs/email-<data>.log (ou, com debug, para a tabela historico).

Impressão

comunicacao_impressao(['pagina' => $html, 'titulo' => …]) guarda o HTML na sessão (impressao) para a página de impressão exibi-lo pronto para imprimir (opção impressao, tratada em gestor/modulos/global.php; sem dados, mostra o componente impressao-sem-dados).

Funções

Gerado a partir de gestor/bibliotecas/comunicacao.php · 2 funções

2 de 2

comunicacao_email

ver no código · linha 137 ↗
comunicacao_email(array|false $params = false): bool|string

Envia emails via SMTP usando PHPMailer.

Parâmetros

$paramsarray|false
Parâmetros da função.

Retorno

bool|string
True se enviado com sucesso, string com erro se falhar, false se email desativado.

O Futuro é Híbrido: Humano + IA.

O Conn2Flow é a ferramenta. Se você precisa do Arquiteto para desenhar a estratégia da sua empresa usando essa tecnologia...

Contrate Consultoria Especializada