PHP – 如何使用 iconv_mime_decode() 函数解码 MIME 头字段?


在 PHP 中,iconv_mime_decode() 函数用于解码 MIME 头字段。这是 PHP 中的一个内置函数,从 PHP 5 版本开始使用。

语法

String iconv_mime_decode(string $string, int $mode, string $encoding)

参数

iconv_mime_decode() 接受三个不同的参数 - $string$mode$encoding$string$mode 是必需参数,但 $encoding 是可选的。

  • $string − $string 参数用于编码的头。它是一个字符串类型参数。

  • $mode − $mode 参数决定在 iconv_mime_decode() 遇到格式错误的 MIME 头字段时的行为。我们可以指定以下给定位掩码的任意组合。

    iconv_mime_decode_headers() 可接受的位掩码列表

    • ICONV_MIME_DECODE_STRICT

    • ICONV_MIME_DECODE_CONTINUE_ON_ERROR

    • ICONV_MIME_DECODE_STRICT − 如果设置了 iconv_mime_decode_strict,则给定的头将完全符合规范进行解码,但此选项默认情况下是禁用的,因为许多损坏的邮件用户代理不遵循此要求,并且不会生成正确的 MIME 头。

    • ICONV_MIME_DECODE_CONTINUE_ON_ERROR − 如果设置了 iconv_mime_decode_continue_on_error() 参数,它会尝试忽略任何语法错误并继续处理给定的头。

  • $encoding − 编码是一个可选参数,用于指定字符集以表示结果。如果省略或为空,则将使用 iconv.internal_encoding。

返回值

iconv_mime_decode() 函数在成功时返回解码的 MIME 字段,或者如果在解码过程中出现任何错误则返回 False。

示例

 在线演示

<?php
   // This yields "Sub: Preços Olà.txt"
   echo iconv_mime_decode("Sub: =?utf-8?B?UHJlw4PCp29zIE9sw4PCoA==?=.txt ",
   0, "ISO-8859-1");
?>

输出

Sub: Preços Olà.txt

更新于: 2021-08-21

336 次浏览

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告

© . All rights reserved.