Forum und email

Mail 邮件函数

简介

mail() 函数可以发送电子邮件。

需求

要使邮件函数可用,PHP 必须在编译时能够访问 sendmail 程序。如果使用其它的邮件程序例如 qmail 或 postfix,确保使用了与其相应的 sendmail 替代程序。PHP 首先会在系统的 PATH 中搜索 sendmail,接着按以下顺序搜索:/usr/bin:/usr/sbin:/usr/etc:/etc:/usr/ucblib:/usr/lib。强烈建议在 PATH 中能够找到 sendmail。另外,编译 PHP 的用户必须能够访问 sendmail 程序。

安装

本扩展模块作为 PHP 内核的一部分,无需安装即可使用。

运行时配置

这些函数的行为受 php.ini 的影响。

Mail 配置选项
名称 默认值 可修改范围 更新记录
SMTP "localhost" PHP_INI_ALL  
smtp_port "25" PHP_INI_ALL 自 PHP 4.3.0 起可用
sendmail_from NULL PHP_INI_ALL  
sendmail_path NULL PHP_INI_SYSTEM  
有关 PHP_INI_* 常量进一步的细节与定义参见php.ini 配置选项

以下是配置选项的简要解释。

SMTP string

仅用于 Windows:PHP 在 mail() 函数中用来发送邮件的 SMTP 服务器的主机名称或者 IP 地址。

smtp_port int

仅用于 Windows:SMTP 服务器的端口号,默认为 25。自 PHP 4.3.0 起可用。

sendmail_from string

在 Windows 下用 PHP 发送邮件时的“From:”邮件地址的值。该选项同时设置了 “Return-Path:”头。

sendmail_path string

sendmail 程序的路径,通常为 /usr/sbin/sendmail/usr/lib/sendmailconfigure 脚本会尝试找到该程序并设定为默认值,但是如果失败的话,可以在这里设定。

不使用 sendmail 的系统应将此指令设定为其邮件系统提供的 sendmail 替代程序,如果有的话。例如,» Qmail 用户通常可以设为 /var/qmail/bin/sendmail/var/qmail/bin/qmail-inject

qmail-inject 不需要任何选项就能正确处理邮件。

此指令也可用于 Windows。如果设定,smtpsmtp_portsendmail_from 都被忽略并运行指定的命令。

资源类型

本扩展模块未定义任何资源类型。

预定义常量

本扩展模块未定义任何常量。

Table of Contents