PHP » PYTHON |
login |
register |
about
|
PYTHON imap_utf7_encode
is this article helpful?
|
Python replacement for PHP's imap_utf7_encode
[
edit
| history
]
#zrbhimani(at)gmail(dot)com def modified_base64(s): s_utf7 = s.encode('utf-7') return s_utf7[1:-1].replace('/', ',') def modified_unbase64(s): s_utf7 = '+' + s.replace(',', '/') + '-' return s_utf7.decode('utf-7') def encode_imap4_utf7(s, errors=None): """ Encode the given C{unicode} string using the IMAP4 specific variation of UTF-7. @type s: C{unicode} @param s: The text to encode. @param errors: Policy for handling encoding errors. Currently ignored. @return: C{tuple} of a C{str} giving the encoded bytes and an C{int} giving the number of code units consumed from the input. """ r = [] _in = [] for c in s: if ord(c) in (range(0x20, 0x26) + range(0x27, 0x7f)): if _in: r.extend(['&', modified_base64(''.join(_in)), '-']) del _in[:] r.append(str(c)) elif c == '&': if _in: r.extend(['&', modified_base64(''.join(_in)), '-']) del _in[:] r.append('&-') else: _in.append(c) if _in: r.extend(['&', modified_base64(''.join(_in)), '-']) return (''.join(r), len(s)) imap_utf7_encode(PHP 4, PHP 5) imap_utf7_encode — Converts ISO-8859-1 string to modified UTF-7 text Description
string imap_utf7_encode
( string $data
)
Converts data to modified UTF-7 text. This is needed to encode mailbox names that contain certain characters which are not in range of printable ASCII characters. Parameters
Return ValuesReturns data encoded with the modified UTF-7 encoding as defined in » RFC 2060, section 5.1.3 (original UTF-7 was defined in » RFC1642). |
more
Recently updated
more
Most requested
more
Last requests
|