webForumDet fria alternativet

LÖST: Göra subject-rad läslig från mail med imap-funktionerna...

PHP

1 svar · 247 visningar · startad av Mungo

Medlem sedan jan. 2000372 inlägg
Frågan#1

Jag sitter och filar på ett program som hämtar in mail och gör roliga saker med dem... Men jag har inte lyckats få till avkodningen av ärenderaden rätt än.

En subject-rad som innehåller svenska tecken kan t.ex. bli sån här:

test_mellanslag =?ISO-8859-1?Q?a=E5a=E4o=F6A=C5A=C4O?= =?ISO-8859-1?Q?=D6?=

...finns det nåt fint sätt att enkelt bara koda av detta?

Medlem sedan jan. 2000372 inlägg
#2

Hittade lösningen själv, nämligen följande funktion...

function mime_decode($s) { 
  $elements = imap_mime_header_decode($s); 
  for($i = 0;$i < count($elements);$i++) { 
    $charset = $elements[$i]->charset; 
    $text =$elements[$i]->text; 
    if(!strcasecmp($charset, "utf-8") || 
       !strcasecmp($charset, "utf-7")) 
    { 
      $text = iconv($charset, "iso-8859-1", $text); 
    } 
    $decoded = $decoded . $text; 
  } 
  return $decoded; 
}
263 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
133 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)