English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico PHP

Tutorial Avançado PHP

PHP & MySQL

Manual de Referência PHP

Envio de E-mail PHP

Neste tutorial, você aprenderá a usar a função mail() do PHP para enviar e-mails de texto ou HTML diretamente a partir de scripts.

Função mail() do PHP

Enviar mensagens de e-mail é uma prática comum em aplicativos web, como enviar e-mails de boas-vindas quando o usuário criar uma conta no seu site, enviar newsletters para usuários registrados, ou obter feedback ou comentários dos usuários através de um formulário de contato no site, etc.

Você pode usar a função mail() integrada do PHP para criar e enviar mensagens de e-mail em formato de texto ou HTML dinâmico a partir de um aplicativo PHP. A sintaxe básica da função pode ser dada da seguinte forma:

mail(to, assunto, mensagem, cabeçalhos, parâmetros)

A tabela a seguir resume os parâmetros deste função.

parâmetroDescrição
obrigatório - Os seguintes parâmetros são obrigatórios
paraEndereço de e-mail do destinatário.
assuntoO assunto do e-mail a ser enviado. Este parâmetro, ou linha de assunto, não deve conter nenhuma quebra de linha (\n).
mensagemDefina a mensagem a ser enviada. Cada linha deve ser separada por caractere de nova linha LF (\n). O número de linhas não pode exceder70 caracteres.
opcional - Os seguintes parâmetros são opcionais
cabeçalhosGeralmente usado para adicionar cabeçalhos adicionais, como 'Remetente', 'Cópia', 'Cópia Oculta'. Os cabeçalhos adicionais devem ser separados por caractere de nova linha e caractere de nova página CRLF (\r\n).
parâmetrosusado para passar outros parâmetros.

Enviar e-mail de texto

A maneira mais simples de enviar e-mails usando PHP é enviar e-mails de texto. No exemplo a seguir, declaramos primeiramente as variáveis-Endereço de e-mail do destinatário, linha de assunto e corpo do e-mail-Depois, passe essas variáveis para a função mail() para enviar um e-mail.

<?php
$to = '[email protected]';
$subject = 'Proposta de casamento';
'message' = 'Olá, Jian, você gostaria de se casar comigo?'; 
$from = '[email protected]';
 
//
Enviar e-mail
    echo 'Seu e-mail foi enviado com sucesso.';
} else {
    echo 'Não foi possível enviar o e-mail. Por favor, tente novamente.';
}
?>

if(mail($to, $subject, $message)){

Enviar e-mail em formato HTML

Para enviar mensagens de texto usando PHP, todo o conteúdo será tratado como texto simples. Vamos melhorar essa saída e transformar o e-mail em um e-mail no formato HTML.

<?php
$to = '[email protected]';
$subject = 'Proposta de casamento';
$from = '[email protected]';
 
//Para enviar e-mails HTML, é necessário configurar o Content-type header
$headers = 'MIME-Versão: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
 
//Criar título do e-mail
$headers .= 'From: $from."\r\n".
    Resposta:-Para: $from."\r\n" .
    'X-Remetente: PHP/' . phpversion();
 
//Escreva um e-mail HTML simples
$message = '<html>';
$message .= '<h1 style="color:#f40;">Olá Jane!</h1">
$message .= '<p style="color:#080;font-size:18px;">Você se casará comigo?</p>';
$message .= '</html>';
 
//Enviar e-mail
if(mail($to, $subject, $message, $headers)){
    echo 'Seu e-mail foi enviado com sucesso.';
} else {
    echo 'Não foi possível enviar o e-mail. Por favor, tente novamente.';
}
?>

Atenção:A função mail() é parte do núcleo do PHP, mas você precisa configurar um servidor de e-mail no seu computador para que ele funcione realmente.

Nos próximos dois capítulos (Processamento de formulários PHPeValidação de formulários PHPNeste módulo, você aprenderá como implementar formulários interativos em seu site para usar essa função de envio de e-mail PHP para receber comentários e feedback dos usuários por e-mail.