Função mail() do PHP
Definição e uso
A função mail() permite que você envie e-mails diretamente a partir do script.
Se a entrega do e-mail for aceita com sucesso, retorna true, caso contrário, retorna false.
sintaxe
mail(para,assunto,mensagem,cabeçalhos,parâmetros)
parâmetros | descrição |
---|---|
para | obrigatório. Especifica o destinatário do e-mail. |
assunto | obrigatório. Especifica o assunto do e-mail. Este parâmetro não pode conter caracteres de nova linha. |
mensagem | obrigatório. Especifica a mensagem a ser enviada. |
cabeçalhos | obrigatório. Especifica cabeçalhos adicionais, como From, Cc e Bcc. |
parâmetros | obrigatório. Especifica os parâmetros adicionais do programa sendmail. |
descrição
em mensagem Os parâmetros devem especificar a mensagem, com intervalos entre as linhas separados por um LF (\n). Cada linha não pode exceder 70 caracteres.
(No Windows) Quando o PHP se conecta diretamente ao servidor SMTP, se um ponto for encontrado no início de uma linha, ele será removido. Para evitar esse problema, substitua o ponto por dois pontos.
<?php $text = str_replace("\n.", "\n..", $text); <?php
Dicas e comentários
Comentários:Lembre-se de que a aceitação da entrega do e-mail não significa que ele tenha chegado ao destino planejado.
Exemplo
Exemplo 1
Enviar um e-mail simples:
<?php $txt = "Primeira linha do texto\nSegunda linha do texto"; // Se uma linha tiver mais de 70 caracteres, use wordwrap(). $txt = wordwrap($txt,70); // Enviar e-mail mail("somebody@example.com","My subject",$txt); <?php
Exemplo 2
Enviar um e-mail com cabeçalhos adicionais:
<?php $to = "somebody@example.com"; $subject = "My subject"; $txt = "Hello world!"; $headers = "From: webmaster@example.com" . "\r\n" . "CC: somebodyelse@example.com"; mail($to,$subject,$txt,$headers); <?php
Exemplo 3
Enviar um e-mail HTML:
<?php $to = "somebody@example.com, somebodyelse@example.com"; $subject = "E-mail HTML"; $message = " <html> <head> <title>E-mail HTML</title> </head> <body> <p>Este e-mail contém Tags HTML!</p> <table> <tr> <th>Primeiro Nome</th> <th>Sobrenome</th> </tr> <tr> <td>Bill</td> <td>Gates</td> </tr> </table> </body> </html> "; // Sempre defina o content-type ao enviar e-mail HTML $headers = "MIME-Version: 1.0" . "\r\n"; $headers .= "Content-type:text/html;charset=iso-8859-1" . "\r\n"; // Mais cabeçalhos $headers .= 'From: <webmaster@example.com>' . "\r\n"; $headers .= 'Cc: myboss@example.com' . "\r\n"; mail($to,$subject,$message,$headers); <?php