iconv_mime_encode

(PHP 5)

iconv_mime_encode --  Construit un en-tête MIME avec les champs field_name et field_value

Description

string iconv_mime_encode ( string field_name, string field_value [, array preferences] )

iconv_mime_encode() compose et retourne une chaîne de caractères qui représente un cahmp en-tête MIME qui ressemble à :
Subject: =?ISO-8859-1?Q?Pr=FCfung_f=FCr?= Entwerfen von einer MIME kopfzeile
Dans l'exemple ci-dessus, "Subject" est le nom du champ et la portion qui commence par "=?ISO-8859-1?..." est la valeur du champ.

Vous pouvez contrôler le comportement de la fonction iconv_mime_encode() en spécifiant un tableau associatif contenant la configuration des éléments dans le paramètre preferences. La liste des éléments supportés par iconv_mime_encode() figure ci-dessous. Notez que les noms des éléments sont sensibles à la casse.

Tableau 1. Liste des éléments supportés par iconv_mime_encode()

ElémentTypeDescriptionValeur par défautExemple
schemeboolean Spécifie la méthode d'encodage d'un champ. Les valeurs possibles sont "B" ou "Q", où "B" signifie que le shéma d'encodage sera base64 et "Q", quoted-printable. BB
input-charsetstring Spécifie le jeux de caractères pour représenter le premier paramètre field_name et le second paramètre field_value. S'il est omis, iconv_mime_encode() utilisera la directive de configuration iconv.internal_charset de votre php.ini pour les représenter. iconv.internal_charset ISO-8859-1
output-charsetstring Sépcifie le jeux de caractères à utiliser pour composer l'en-tête MIME. S'il est omis, la même valeur que input-charset sera utilisée. le même valeur que input-charset UTF-8
line-lengthentier Spécifie la longueur maximale de chaque en-tête. Si l'en-tête est plus grande que la longueur défini par ce paramètre, l'en-tête résultant sera un en-tête composée de plusieurs lignes conformément au standard RFC2822 - Internet Message Format. S'il est omis, la longueur maximale sera fixée à 76 caractères. 76996
line-break-charsstring Spécifie les caractères de fin de ligne. S'il est omis, la valeur par défaut sera "\r\n" (CR LF). Notez que ce paramètre est toujours représenté comme une chaîne ASCII au regard de la valeur du paramètre input-charset. \r\n\n

Exemple 1. Exemple avec iconv_mime_encode()

<?php
$preferences
= array(
        
"input-charset" => "ISO-8859-1",
        
"output-charset" => "UTF-8",
        
"line-length" => 76,
        
"line-break-chars" => "\n"
);
$preferences["scheme"] = "Q";
// Ceci affichera : "Subject: =?UTF-8?Q?Pr=C3=BCfung_Pr=C3=BCfung?="
echo iconv_mime_encode("Subject", "Prüfung Prüfung", $preferences);

$preferences["scheme"] = "B";
// Ceci affichera : "Subject: =?UTF-8?B?UHLDvGZ1bmcgUHLDvGZ1bmc=?="
echo iconv_mime_encode("Subject", "Prüfung Prüfung", $preferences);
?>

Voir aussi imap_binary(), mb_encode_mimeheader() et imap_8bit().