2023-08-28

使用iconv_mime_encode()函数来构建一个MIME头字段的PHP代码

使用iconv_mime_encode()函数来构建一个MIME头字段的PHP代码

string iconv_mime_encode(string $field_name, string $field_value, array $options=[])

iconv_mime_encode() 函数用于组合并返回一个表示有效 MIME 标头字段的字符串,如下所示 –

Subject: =ISO-8859-1?Q?Pr=FCfung_f=FFCr?= Entwerfen von einer MIME kopfzeile
登录后复制

注意-在上面的示例中,Subject –字段名,以"=ISO-8859-1?…"开头的部分是字段值

参数

iconv_mime_encode()接受三个不同的参数
$field_name$field_value$options

  • $field_name – 此参数用于字段名称。

  • $field_value – 此参数用于字段值。

  • $options – 使用此参数,您可以通过指定关联数组来控制 iconv_mime_encode() 的行为包含可选参数的配置项。

以下是 iconv_mime_encode() 支持的配置项列表

项目

类型

描述

默认值

示例

方案

字符串

该方案指定对字段值进行编码的方法。该项目值可以是 B (base64) 或 Q(quoted-printable) 编码方案。 

输入字符集

字符串

指定字符集,field_name是第一个参数,field_value是第二个参数。如果未给出这些参数,则 iconv_mime_encode() 函数假定它可能出现在 iconv.internal_charset ini 设置中。

iconv.internal_charset

ISO-8859-1

输出字符集

字符串

它指定用于组成 MIME 标头的字符集。如果未给出,则它将使用输入字符集值。

input_charset 用作默认值

UTF-8

行长

整数

指定标题行的最大长度。

76

996

换行符

字符串

它指定在长标头字段上执行折叠时作为 EOL 附加到每行的字符序列。如果未给出,则默认为“/r

”(CR LF)

/r

示例 1 – 使用“Q”引用打印编码方案

 实时演示

<?php
   // used configuration items supported by iconv_mime_encode()
   $options = array(
      "input-charset" => "ISO-8859-2",
      "output-charset" => "UTF-8",
      "line-length" => 76,
      "line-break-chars" => ""
   );
   // Q quoted-printable encoding scheme is used
   $options["scheme"] = "Q";

   // Below code will show the result as
   // "Subject: =?UTF-8?Q?Pr=C3=BCfung=20Pr=C3=BCfung?="
   echo iconv_mime_encode("Subject", "Prüfung Prüfung", $options);
?>
登录后复制

输出

Subject: =?UTF-8?Q?Pr=C3=83=C2=BCfung=20Pr=C3=83=C2=BCfung?=
登录后复制

示例 2

 现场演示

<?php
   // used configuration items supported by iconv_mime_encode()
   $options = array(
      "input-charset" => "ISO-8859-1",
      "output-charset" => "UTF-8",
      "line-length" => 76,
      "line-break-chars" => ""
   );

   // B base64 encoding scheme is used
   $options["scheme"] = "B";

   // Below code will show the result as
   //"Subject: =?UTF-8?B?UHJlw4PCp29zIE9sw4PCoC50eHQ=?="
   echo iconv_mime_encode("Subject", "Preços Olà.txt", $options);
?>
登录后复制

输出

Subject: =?UTF-8?B?UHJlw4PCp29zIE9sw4PCoC50eHQ=?=
登录后复制

以上就是使用iconv_mime_encode()函数来构建一个MIME头字段的PHP代码的详细内容,更多请关注php中文网其它相关文章!

https://www.php.cn/faq/599054.html

发表回复

Your email address will not be published. Required fields are marked *