Encode::Unicode::UTF7(3perl) Perl Programmers Reference Guide Encode::Unicode::UTF7(3perl)

Encode::Unicode::UTF7 -- UTF-7 encoding

use Encode qw/encode decode/; 
$utf7 = encode("UTF-7", $utf8);
$utf8 = decode("UTF-7", $ucs2);

This module implements UTF-7 encoding documented in RFC 2152. UTF-7, as its name suggests, is a 7-bit re-encoded version of UTF-16BE. It is designed to be MTA-safe and expected to be a standard way to exchange Unicoded mails via mails. But with the advent of UTF-8 and 8-bit compliant MTAs, UTF-7 is hardly ever used.

UTF-7 was not supported by Encode until version 1.95 because of that. But Unicode::String, a module by Gisle Aas which adds Unicode supports to non-utf8-savvy perl did support UTF-7, the UTF-7 support was added so Encode can supersede Unicode::String 100%.

When you want to encode Unicode for mails and web pages, however, do not use UTF-7 unless you are sure your recipients and readers can handle it. Very few MUAs and WWW Browsers support these days (only Mozilla seems to support one). For general cases, use UTF-8 for message body and MIME-Header for header instead.

Encode, Encode::Unicode, Unicode::String

RFC 2781 http://www.ietf.org/rfc/rfc2152.txt

2024-09-01 perl v5.40.0