Encode/decode Internationalized Domain Names.
Открытые члены | |
__construct ($options=false) | |
setParameter ($option, $value=false) | |
decode ($input, $one_time_encoding=false) | |
encode ($decoded, $one_time_encoding=false) | |
encodeUri ($uri) | |
getLastError () | |
Открытые статические члены | |
static | getInstance ($params=[]) |
static | singleton ($params=[]) |
Защищенные члены | |
_decode ($encoded) | |
_encode ($decoded) | |
_adapt ($delta, $npoints, $is_first) | |
_encode_digit ($d) | |
_decode_digit ($cp) | |
_error ($error= '') | |
_nameprep ($input) | |
_hangul_decompose ($char) | |
_hangul_compose ($input) | |
_get_combining_class ($char) | |
_apply_cannonical_ordering ($input) | |
_combine ($input) | |
_utf8_to_ucs4 ($input) | |
_ucs4_to_utf8 ($input) | |
_ucs4_to_ucs4_string ($input) | |
_ucs4_string_to_ucs4 ($input) | |
Защищенные статические члены | |
static | byteLength ($string) |
Защищенные данные | |
$_punycode_prefix = 'xn--' | |
$_invalid_ucs = 0x80000000 | |
$_max_ucs = 0x10FFFF | |
$_base = 36 | |
$_tmin = 1 | |
$_tmax = 26 | |
$_skew = 38 | |
$_damp = 700 | |
$_initial_bias = 72 | |
$_initial_n = 0x80 | |
$_sbase = 0xAC00 | |
$_lbase = 0x1100 | |
$_vbase = 0x1161 | |
$_tbase = 0x11A7 | |
$_lcount = 19 | |
$_vcount = 21 | |
$_tcount = 28 | |
$_ncount = 588 | |
$_scount = 11172 | |
$_error = false | |
$_api_encoding = 'utf8' | |
$_allow_overlong = false | |
$_strict_mode = false | |
$_idn_version = 2003 | |
$slast | |
Статические защищенные данные | |
static | $_mb_string_overload = null |
static | $NP |
__construct | ( | $options = false | ) |
the constructor
array | $options |
|
protected |
Adapt the bias according to the current code point and position
int | $delta | |
int | $npoints | |
int | $is_first |
|
protected |
Applies the cannonical ordering of a decomposed UCS4 sequence
array | Decomposed UCS4 sequence |
|
protected |
Do composition of a sequence of starter and non-starter
array | UCS4 Decomposed sequence |
|
protected |
The actual decoding algorithm
string |
|
protected |
Decode a certain digit
int | $cp |
|
protected |
The actual encoding algorithm
string |
|
protected |
Encoding a certain digit
int | $d |
|
protected |
Internal error handling method
string | $error |
|
protected |
Returns the combining class of a certain wide char
integer | Wide char to check (32bit integer) |
|
protected |
Ccomposes a Hangul syllable (see http://www.unicode.org/unicode/reports/tr15/#Hangul
array | Decomposed UCS4 sequence |
|
protected |
Decomposes a Hangul syllable (see http://www.unicode.org/unicode/reports/tr15/#Hangul
integer | 32bit UCS4 code point |
|
protected |
Do Nameprep according to RFC3491 and RFC3454
array | Unicode Characters |
|
protected |
Convert UCS-4 strin into UCS-4 garray
string | $input |
|
protected |
Convert UCS-4 array into UCS-4 string
array | $input |
|
protected |
Convert UCS-4 string into UTF-8 string See _utf8_to_ucs4() for details
string | $input |
|
protected |
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
string | $input |
|
staticprotected |
Gets the length of a string in bytes even if mbstring function overloading is turned on
string | $string | the string for which to get the length. |
decode | ( | $input, | |
$one_time_encoding = false |
|||
) |
Decode a given ACE domain name
string | Domain name (ACE string) [ |
string | Desired output encoding, see setParameter] |
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 setParameter] |
encodeUri | ( | $uri | ) |
Removes a weakness of encode(), which cannot properly handle URIs but instead encodes their path or query components, too.
string | $uri | Expects the URI as a UTF-8 (or ASCII) string |
|
static |
Attempts to return a concrete IDNA instance.
array | $params | Set of paramaters |
getLastError | ( | ) |
Use this method to get the last error ocurred
void |
setParameter | ( | $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) |
|
static |
Attempts to return a concrete IDNA instance for either php4 or php5, only creating a new instance if no IDNA instance with the same parameters currently exists.
array | $params | Set of paramaters |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
staticprotected |
Holds all relevant mapping tables See RFC3454 for details
array
|
protected |