PHP.mk документација

iconv_mime_encode

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

function.iconv-mime-encode.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека function.iconv-mime-encode.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
iconv_mime_encode

Референца за `function.iconv-mime-encode.php` со подобрена типографија и навигација.

function.iconv-mime-encode.php

iconv_mime_encode

класата mysqli_driver

iconv_mime_encode(PHP 5, PHP 7, PHP 8) MIME Композира

= NULL

iconv_mime_encode(string $field_name, string $field_value, array $options = []): string|false

поле со заглавие MIME Композира и враќа стринг што претставува валидно

Subject: =?ISO-8859-1?Q?Pr=FCfung_f=FCr?= Entwerfen von einer MIME kopfzeile
поле со заглавие, кое изгледа вака:

Параметри

field_name

Името на полето.

field_value

Во горниот пример, "Subject" е името на полето, а делот што започнува со "=?ISO-8859-1?..." е вредноста на полето.

options

Вредноста на полето. iconv_mime_encode() Можете да го контролирате однесувањето на optionsсо специфицирање асоцијативен низ што содржи ставки за конфигурација на опционалниот трет параметар iconv_mime_encode() . Ставките поддржани од

се наведени подолу. Забележете дека имињата на ставките се третираат како чувствителни на големи и мали букви. iconv_mime_encode()
Ставка Тип = NULL Стандардна вредност Пример
scheme string Ставки за конфигурација поддржани од base64 Специфицира методот за кодирање на вредноста на полето. Вредноста на оваа ставка може да биде "B" или "Q", каде "B" означува quoted-printable шема за кодирање и "Q" означува шема за кодирање. шема за кодирање.
input-charset string B field_name Специфицира сет на знаци во кој првиот параметар field_value и вториот параметар iconv_mime_encode() се претставени. Ако не е дадено, iconv.internal_encoding ini поставката. iconv.internal_encoding ISO-8859-1
output-charset string Specifies the character set to use to compose the MIME header. iconv.internal_encoding UTF-8
line-length int Го специфицира множеството на знаци што треба да се користи за составување на Го специфицира максималната должина на линиските заглавја. Резултирачкото заглавје се "превиткува" во сет од повеќе линиски во случај ако резултирачкото поле за заглавје би било подолго од вредноста на овој параметар, според» RFC2822 - Internet Message Format 76 996
line-break-chars string . Ако не е дадено, должината ќе биде ограничена на 76 знаци.CR LFГо специфицира редоследот на знаците што треба да се додадат на секоја линија како знак за крај на линијата кога се врши „превиткување“ на долго поле за заглавје. Ако не е дадено, ова стандардно ќе биде „\r\n“ ( input-charset. \r\n \n

Вратени вредности

). Забележете дека овој параметар секогаш се третира како ASCII стринг без оглед на вредноста на MIME Враќа кодиран false ако се случи грешка за време на кодирањето.

Примери

Пример #1 iconv_mime_encode() example

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

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

Види Исто така

Белешки од корисници 3 белешки

shaman_master на list точка ru
пред 6 години
From mail(): Lines should not belarger than 70 characters.  Not 76 and not 72!
поле при успех, или
пред 14 години
iconv_mime_encode() isn't directly suitable for encoding headers which include "specials" as described in RFC 1522 s4 & s5, for example 
<?php
$mimeprefs = array ("scheme" => "Q",
                    "input-charset" => "utf-8",
                    "output-charset" => "utf-8",
                    "line-break-chars" => "\n");
$enc = iconv_mime_encode('From',  '"Réal Namé" <[email protected]>', $prefs);
?>
will wrongly attempt to encode the angle brackets.  To use the function in place of mb_encode_mimeheader(), instead you need to encode the words separately, removing the superfluous field name:

<?php
$encoded = "From: \"". preg_replace('/^:\s+/', '', iconv_mime_encode("", $real, $mimeprefs))."\" <$email>";
?>

Also, values of "line-length" greater than 76 would be illegal under RFC 1522 and resulting encoded words may not be recognised.  (Not tested, but 72 would be safer.)
cedric на gn точка apc точка org
пред 15 години
Looks like this function suffers from the same bug as mb_encode_mime() with long strings of non us-ascii characters. The function then returns false. This applies for utf-8 to utf-8 "conversion".

<?php
$subject = 'Вы находитесь здесь: Главная > продукт';

$prefs = array(
    'scheme' => 'Q',
    'input-charset' => 'UTF-8',
    'output-charset' => 'UTF-8',
    'line-length' => 76,
    'line-break-chars' => "\r\n",
);

echo 'Original: ' . $subject . PHP_EOL;
$enc = iconv_mime_encode( 'Subject', $subject, $prefs );
var_dump( $enc );  // will show bool(false)
?>

As a workaround, you could explode() the value on spaces and encode each word separately. Then remove the "Subject: " in front of the resulting strings and join() them with "\r\n " (don't forget the SPACE after the \n) as separator.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.