«

PHP:mb_send_mail()的用法

时间:2024-3-1 20:33     作者:韩俊     分类: PHP


mb_send_mail

(PHP 4 >= 4.0.6, PHP 5)

mb_send_mail — 发送编码过的邮件

说明

bool mb_send_mail
( string $to
, string $subject
, string $message
[, string $additional_headers = NULL
[, string $additional_parameter = NULL
]] )

发送邮件。邮件头和内容根据 mb_language() 设置来转换编码。 这是 mail() 的一个包装器函数,所以详情参见 mail()。

参数

to

被发送到该邮件地址。可通过逗号分隔地址的 to 来指定多个收件人。 该参数不会被自动编码。

subject

邮件标题。

message

邮件消息。

additional_headers(可选)

String to be inserted at the end of the email header.

This is typically used to add extra headers (From, Cc, and Bcc). Multiple extra headers should be separated with a CRLF (rn). Validate parameter not to be injected unwanted headers by attackers.

Note:

When sending mail, the mail must contain a From header. This can be set with the additional_headers parameter, or a default can be set in php.ini.

Failing to do this will result in an error message similar to Warning: mail(): "sendmail_from" not set in php.ini or custom "From:" header missing. The From header sets also Return-Path under Windows.

Note:

If messages are not received, try using a LF (n) only. Some Unix mail transfer agents (most notably » qmail) replace LF by CRLF automatically (which leads to doubling CR if CRLF is used). This should be a last resort, as it does not comply with » RFC 2822.

additional_parameter

additional_parameter 是一个 MTA 命令行参数。 在使用 sendmail 时对设置正确的返回路径头很有帮助。

This parameter is escaped by escapeshellcmd() internally to prevent command execution. escapeshellcmd() prevents command execution, but allows to add addtional parameters. For security reason, this parameter should be validated.

Since escapeshellcmd() is applied automatically, some characters that are allowed as email addresses by internet RFCs cannot be used. Programs that are required to use these characters mail() cannot be used.

The user that the webserver runs as should be added as a trusted user to the sendmail configuration to prevent a 'X-Warning' header from being added to the message when the envelope sender (-f) is set using this method. For sendmail users, this file is /etc/mail/trusted-users.

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE

更新日志

版本 说明 5.0.0 自 PHP 5.0.0 起可以重新定义 Content-Type 和 Content-Transfer-Encoding 头。 在此之前,总是使用 mb_language() 定义的值。

参见

mail() - 发送邮件 mb_encode_mimeheader() - 为 MIME 头编码字符串 mb_language() - 设置/获取当前的语言

标签: php php教程

热门推荐