iconv_mime_decode_headers

(PHP 5, PHP 7)

iconv_mime_decode_headersBir defada birden fazla MIME başlık alanını çözümler

Açıklama

iconv_mime_decode_headers ( string $kodlanmış_başlıklar [, int $kip = 0 [, string $karküm = ini_set("iconv.internal_encoding") ]] ) : array

Çok sayıda MIME başlık alanını bir kerede çözümler.

Değiştirgeler

kodlanmış_başlıklar

Bir dizge olarak kodlanmış başlıklar.

kip

kip değiştirgesi, işlev bozuk bir MIME başlık alanı saptadığı takdirde işlevin davranışını belirler. Aşağıdaki değerleri bir bit maskesi olarak belirtebilirsiniz:

iconv_mime_decode_headers() tarafından desteklenen bit maskeleri
Değer Sabit Açıklama
1 ICONV_MIME_DECODE_STRICT Belirtilirse, başlık, » RFC2047'de tanımlanan standartlarla tam uyumlu kodlanır. Bu seçenek öntanımlı olarak kapalıdır, çünkü belirtime uymayan ve doğru MIME başlıkları üretmeyen pek çok kullanıcı eposta istemcisi var.
2 ICONV_MIME_DECODE_CONTINUE_ON_ERROR Belirtilirse, iconv_mime_decode_headers() işlevi yazım hatalarını yoksayıp belirtilen başlığı işlemeye devam etmeye çalışır.

karküm

İsteğe bağlı karküm değiştirgesi elde edilecek dizgenin karakter kümesini belirler. Belirtilmezse, dizgenin karakter kodlamasının iconv.internal_encoding yönergesinde belirtilen kodlama olacağı varsayılır.

Dönen Değerler

kodlanmış_başlıklar dizgesi ile belirtilen kodlanmış MIME başlık alanlarını çözümleyip sonucu bir ilişkisel dizi olarak döndürür. Bu işlem sırasında bir hata oluşursa FALSE döner.

Dönen dizideki her anahtar bir başlık alanına, her değer de anahtarla ilgili bir başlık değerine karşılıktır. Aynı isimde birden fazla alan varsa işlev bunları özdevinimli olarak göründükleri sırayla sayısal indisli bir diziye yerleştirir.

Örnekler

Örnek 1 - iconv_mime_decode_headers() örneği

<?php
$headers_string 
= <<<EOF
Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?=
To: [email protected]
Date: Thu, 1 Jan 1970 00:00:00 +0000
Message-Id: <[email protected]>
Received: from localhost (localhost [127.0.0.1]) by localhost
    with SMTP id example for <[email protected]>;
    Thu, 1 Jan 1970 00:00:00 +0000 (UTC)
    (envelope-from [email protected])
Received: (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000

EOF;

$headers =  iconv_mime_decode_headers($headers_string0"ISO-8859-1");
print_r($headers);
?>

Yukarıdaki örneğin çıktısı:

Array
(
    [Subject] => Prüfung Prüfung
    [To] => [email protected]
    [Date] => Thu, 1 Jan 1970 00:00:00 +0000
    [Message-Id] => <[email protected]>
    [Received] => Array
        (
            [0] => from localhost (localhost [127.0.0.1]) by localhost with SMTP id example for <[email protected]>; Thu, 1 Jan 1970 00:00:00 +0000 (UTC) (envelope-from [email protected])
            [1] => (qmail 0 invoked by uid 65534); 1 Thu 2003 00:00:00 +0000
        )

)

Ayrıca Bakınız