API Joomla 1.5.26
Documentation des API du CMS Joomla en version 1.5
|
Encode/decode Internationalized Domain Names.
The class allows to convert internationalized domain names (see RFC 3490 for details) as they can be used with various registries worldwide to be translated between their original (localized) form and their encoded form as it will be used in the DNS (Domain Name System).
The class provides two public methods, encode() and decode(), which do exactly what you would expect them to do. You are allowed to use complete domain names, simple strings and complete email addresses as well. That means, that you might use any of the following notations:
Unicode input might be given as either UTF-8 string, UCS-4 string or UCS-4 array. Unicode output is available in the same formats. You can select your preferred format via set_paramter().
ACE input and output is always expected to be ASCII.
idna_convert::_adapt | ( | $ | delta, |
$ | npoints, | ||
$ | is_first | ||
) |
idna_convert::_apply_cannonical_ordering | ( | $ | input | ) |
Apllies the cannonical ordering of a decomposed UCS4 sequence
array | Decomposed UCS4 sequence |
Références $i, et _get_combining_class().
Référencé par _nameprep().
idna_convert::_combine | ( | $ | input | ) |
Do composition of a sequence of starter and non-starter
array | UCS4 Decomposed sequence |
Référencé par _nameprep().
idna_convert::_decode | ( | $ | encoded | ) |
The actual decoding algorithm private
Références $i, $k, _adapt(), _decode_digit(), _error(), et _ucs4_to_utf8().
Référencé par decode().
idna_convert::_decode_digit | ( | $ | cp | ) |
Decode a certain digit private
Référencé par _decode().
idna_convert::_encode | ( | $ | decoded | ) |
The actual encoding algorithm private
Références $i, $k, _adapt(), _encode_digit(), _error(), _nameprep(), _utf8_to_ucs4(), et elseif.
Référencé par encode().
idna_convert::_encode_digit | ( | $ | d | ) |
Encoding a certain digit private
Référencé par _encode().
idna_convert::_error | ( | $ | error = '' | ) |
Internal error handling method private
Références $error.
Référencé par _decode(), _encode(), _nameprep(), _ucs4_string_to_ucs4(), _ucs4_to_utf8(), _utf8_to_ucs4(), decode(), encode(), get_last_error(), et set_parameter().
idna_convert::_get_combining_class | ( | $ | char | ) |
Returns the combining class of a certain wide char
integer | Wide char to check (32bit integer) |
Référencé par _apply_cannonical_ordering(), et _nameprep().
idna_convert::_hangul_compose | ( | $ | input | ) |
Ccomposes a Hangul syllable (see http://www.unicode.org/unicode/reports/tr15/#Hangul
array | Decomposed UCS4 sequence |
Références $i.
Référencé par _nameprep().
idna_convert::_hangul_decompose | ( | $ | char | ) |
Decomposes a Hangul syllable (see http://www.unicode.org/unicode/reports/tr15/#Hangul
integer | 32bit UCS4 code point |
Référencé par _nameprep().
idna_convert::_nameprep | ( | $ | input | ) |
Do Nameprep according to RFC3491 and RFC3454
array | Unicode Characters |
Références $class, $error, $i, $output, _apply_cannonical_ordering(), _combine(), _error(), _get_combining_class(), _hangul_compose(), _hangul_decompose(), et elseif.
Référencé par _encode().
idna_convert::_ucs4_string_to_ucs4 | ( | $ | input | ) |
idna_convert::_ucs4_to_ucs4_string | ( | $ | input | ) |
idna_convert::_ucs4_to_utf8 | ( | $ | input | ) |
idna_convert::_utf8_to_ucs4 | ( | $ | input | ) |
This converts an UTF-8 encoded string to its UCS-4 representation By talking about UCS-4 "strings" we mean arrays of 32bit integers representing each of the "chars". This is due to PHP not being able to handle strings with bit depth different from 8. This apllies to the reverse method _ucs4_to_utf8(), too. The following UTF-8 encodings are supported: bytes bits representation 1 7 0xxxxxxx 2 11 110xxxxx 10xxxxxx 3 16 1110xxxx 10xxxxxx 10xxxxxx 4 21 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx 5 26 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 6 31 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx Each x represents a bit that can be used to store character data. The five and six byte sequences are part of Annex D of ISO/IEC 10646-1:2000 private
Références $k, $output, _error(), et elseif.
Référencé par _encode(), decode(), et encode().
idna_convert::decode | ( | $ | input, |
$ | one_time_encoding = false |
||
) |
Decode a given ACE domain name
string | Domain name (ACE string) [ |
string | Desired output encoding, see set_parameter] |
Références $k, $return, _decode(), _error(), _ucs4_to_ucs4_string(), _utf8_to_ucs4(), et elseif.
idna_convert::encode | ( | $ | decoded, |
$ | one_time_encoding = false |
||
) |
Encode a given UTF-8 domain name
string | Domain name (UTF-8 or UCS-4) [ |
string | Desired input encoding, see set_parameter] |
Références $k, $output, _encode(), _error(), _ucs4_string_to_ucs4(), _ucs4_to_utf8(), et _utf8_to_ucs4().
idna_convert::get_last_error | ( | ) |
Use this method to get the last error ocurred
void |
Références _error().
idna_convert::idna_convert | ( | $ | options = false | ) |
idna_convert::set_parameter | ( | $ | option, |
$ | value = false |
||
) |
Sets a new option value. Available options and values: [encoding - Use either UTF-8, UCS4 as array or UCS4 as string as input ('utf8' for UTF-8, 'ucs4_string' and 'ucs4_array' respectively for UCS4); The output is always UTF-8] [overlong - Unicode does not allow unnecessarily long encodings of chars, to allow this, set this parameter to true, else to false; default is false.] [strict - true: strict mode, good for registration purposes - Causes errors on failures; false: loose mode, ideal for "wildlife" applications by silently ignoring errors and returning the original input instead
mixed | Parameter to set (string: single parameter; array of Parameter => Value pairs) |
string | Value to use (if parameter 1 is a string) |
Références $k, $option, et _error().
Référencé par idna_convert().
idna_convert::$_allow_overlong = false |
idna_convert::$_api_encoding = 'utf8' |
idna_convert::$_base = 36 |
idna_convert::$_damp = 700 |
idna_convert::$_error = false |
idna_convert::$_initial_bias = 72 |
idna_convert::$_initial_n = 0x80 |
idna_convert::$_invalid_ucs = 0x80000000 |
idna_convert::$_lbase = 0x1100 |
idna_convert::$_lcount = 19 |
idna_convert::$_max_ucs = 0x10FFFF |
idna_convert::$_ncount = 588 |
idna_convert::$_punycode_prefix = 'xn--' |
idna_convert::$_sbase = 0xAC00 |
idna_convert::$_scount = 11172 |
idna_convert::$_skew = 38 |
idna_convert::$_strict_mode = false |
idna_convert::$_tbase = 0x11A7 |
idna_convert::$_tcount = 28 |
idna_convert::$_tmax = 26 |
idna_convert::$_tmin = 1 |
idna_convert::$_vbase = 0x1161 |
idna_convert::$_vcount = 21 |
idna_convert::$NP = array() |