PHP में, iconv_mime_decode_headers() फ़ंक्शन का उपयोग एक साथ कई MIME हेडर फील्ड्स को डिकोड करने के लिए किया जाता है। यह PHP में एक अंतर्निहित फ़ंक्शन है।
सिंटैक्स
iconv_mime_decode_headers($str_headers, $int_mode, $str_encoding)
पैरामीटर
iconv_mime_decode_headers() फ़ंक्शन तीन अलग-अलग पैरामीटर्स स्वीकार करता है - $headers, $mode और $encoding।
$headers - $header पैरामीटर एन्कोडेड हेडर्स के लिए उपयोग किया जाता है। यह एक स्ट्रिंग प्रकार का पैरामीटर है।
$mode - $mode पैरामीटर उस व्यवहार को निर्धारित करता है जब iconv_mime_decode_headers() विकृत 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 - एन्कोडिंग एक वैकल्पिक पैरामीटर है जिसका उपयोग परिणाम को दर्शाने के लिए कैरेक्टर सेट निर्दिष्ट करने के लिए किया जाता है। यदि छोड़ा गया या null है तो iconv.internal_encoding का उपयोग किया जाएगा।
रिटर्न वैल्यू
iconv_mime_decode_headers() फ़ंक्शन एक सहयोगी ऐरे लौटाता है जो हेडर्स द्वारा निर्दिष्ट MIME हेडर फील्ड्स का पूरा सेट रखता है सफलता पर, या डिकोडिंग के दौरान कोई त्रुटि आने पर False लौटाता है।
उदाहरण 1
<pre>
<?php
$str_headers = <<
Received: from localhost (localhost [127.0.0.1]) by localhost
with SMTP id xyz for ;
Mon, 21 Jun 2021 00:00:00 +0000 (UTC)
(envelope-from example-return-0000-xyz=xyz.com@example.com)
Received: (qmail 0 invoked by uid 65534); 21 Mon 2005 00:00:00 +0000
EOF;
$headers = iconv_mime_decode_headers($str_headers, 0, "ISO-8859-1");
print_r($headers);
?>
</pre>
आउटपुट
Array (
[Subject] => Prfung Prfung
[To] => xyz@example.com
[Date] => Mon, 21 Jun 2021 00:00:00 +0000
[Message-Id] =>
[Received] => Array
(
[0] => from localhost (localhost [127.0.0.1]) by localhost with SMTP id xyz for ; Mon, 21 Jun 2021 00:00:00 +0000 (UTC) (envelope-from example-return-0000-xyz=xyz.com@example.com)
[1] => (qmail 0 invoked by uid 65534); 21 Mon 2005 00:00:00 +0000
)
)