PHP mail() 函数

返回上一级

PHP mail() 函数用于在 PHP 脚本中直接发送电子邮件

函数原型

mail(to,subject,message,headers,parameters)

谨记: 电子邮件的投递被接受,并不意味着电子邮件到达了计划的目的地

参数

参数 描述
to 必需。规定电子邮件的接收者
subject 必需。规定电子邮件的主题,该参数不能包含任何换行字符
message 必需。定义要发送的消息
用 LF(\n)将每一行分开,每行不应超过 70 个字符
headers 可选。规定额外的报头
比如 From、Cc 和 Bcc。附加标头应该用 CRLF(\r\n)分开
parameters 可选。规定 sendmail 程序的额外参数(在 sendmail_path 配置中定义)
例如:当 sendmail 和 -f sendmail 的选项一起使用时,sendmail 可用于设置发件人地址

注意:

  1. Windows :当 PHP 直接连接到 SMTP 服务器时,如果在消息的某行开头发现一个句号,则会被删掉

    要解决这个问题,请将单个句号替换成两个句号

    <?php
    $txt = str_replace("n.", "n..", $txt);
    ?>
    
  2. 发送电子邮件时,它必须包含一个 From 标头

    可通过该参数进行设置或在 php.ini 文件中进行设置

返回值

如果电子邮件的投递被成功地接受,则返回 TRUE,否则返回 FALSE

范例

发送一封简单的电子邮件

<?php

$txt = "First line of textnSecond line of text";

// 使用 wordwrap() 函数来让每行不多于 70 个字符
$txt = wordwrap($txt,70);

// 发送邮件
mail("somebody@example.com","My subject",$txt);

发送一封带有额外报头的电子邮件

<?php

$to         = "somebody@example.com";
$subject    = "My subject";
$txt        = "Hello world!";
$headers    = "From: webmaster@example.com" . "rn" ."CC: somebodyelse@example.com";

mail($to,$subject,$txt,$headers);

发送一封 HTML 电子邮件

<?php

$to         = "somebody@example.com, somebodyelse@example.com";
$subject    = "HTML email";
$message    = "<html><head><title>HTML email</title></head><body><p>This email contains HTML Tags!</p><table><tr><th>Firstname</th><th>Lastname</th></tr><tr><td>John</td><td>Doe</td></tr></table></body></html>";

// 设置 content-type 
$headers = "MIME-版本: 1.0" . "rn";
$headers .= "Content-type:text/html;charset=utf8" . "rn";

// 更多头部
$headers .= 'From: <webmaster@example.com>' . "rn";
$headers .= 'Cc: myboss@example.com' . "rn";

mail($to,$subject,$message,$headers);

返回上一级

PHP 5 函数参考手册

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2018 简单教程 twle.cn All Rights Reserved.