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