You are here

function _mime_header_decode in Drupal 7

Same name and namespace in other branches
  1. 4 includes/unicode.inc \_mime_header_decode()
  2. 5 includes/unicode.inc \_mime_header_decode()
  3. 6 includes/unicode.inc \_mime_header_decode()

Decodes encoded header data passed from mime_header_decode().

Callback for preg_replace_callback() within mime_header_decode().

Parameters

$matches: The array of matches from preg_replace_callback().

Return value

string The mime-decoded string.

See also

mime_header_decode()

1 string reference to '_mime_header_decode'
mime_header_decode in includes/unicode.inc
Decodes MIME/HTTP encoded header values.

File

includes/unicode.inc, line 437
Provides Unicode-related conversions and operations.

Code

function _mime_header_decode($matches) {

  // Regexp groups:
  // 1: Character set name
  // 2: Escaping method (Q or B)
  // 3: Encoded data
  $data = $matches[2] == 'B' ? base64_decode($matches[3]) : str_replace('_', ' ', quoted_printable_decode($matches[3]));
  if (strtolower($matches[1]) != 'utf-8') {
    $data = drupal_convert_to_utf8($data, $matches[1]);
  }
  return $data;
}