Internationalization Functions

Table of Contents

The Collator class

Introduction

Provides string comparison capability with support for appropriate locale-sensitive sort orderings.

Class synopsis

Collator
class Collator {
/* Methods */
public __construct ( string $locale )
public bool asort ( array &$arr [, int $sort_flag ] )
public int compare ( string $str1 , string $str2 )
public static Collator create ( string $locale )
public int getAttribute ( int $attr )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public string getLocale ( int $type )
public string getSortKey ( string $str )
public int getStrength ( void )
public bool setAttribute ( int $attr , int $val )
public bool setStrength ( int $strength )
public bool sortWithSortKeys ( array &$arr )
public bool sort ( array &$arr [, int $sort_flag ] )
}

Predefined Constants

Collator::FRENCH_COLLATION (integer)

Sort strings with different accents from the back of the string. This attribute is automatically set to On for the French locales and a few others. Users normally would not need to explicitly set this attribute. There is a string comparison performance cost when it is set On, but sort key length is unaffected. Possible values are:

  • Collator::ON
  • Collator::OFF(default)
  • Collator::DEFAULT_VALUE

Example #1 FRENCH_COLLATION rules

  • F=OFF cote < coté < côte < côté
  • F=ON cote < côte < coté < côté

Collator::ALTERNATE_HANDLING (integer)

The Alternate attribute is used to control the handling of the so called variable characters in the UCA: whitespace, punctuation and symbols. If Alternate is set to NonIgnorable (N), then differences among these characters are of the same importance as differences among letters. If Alternate is set to Shifted (S), then these characters are of only minor importance. The Shifted value is often used in combination with Strength set to Quaternary. In such a case, whitespace, punctuation, and symbols are considered when comparing strings, but only if all other aspects of the strings (base letters, accents, and case) are identical. If Alternate is not set to Shifted, then there is no difference between a Strength of 3 and a Strength of 4. For more information and examples, see Variable_Weighting in the » UCA. The reason the Alternate values are not simply On and Off is that additional Alternate values may be added in the future. The UCA option Blanked is expressed with Strength set to 3, and Alternate set to Shifted. The default for most locales is NonIgnorable. If Shifted is selected, it may be slower if there are many strings that are the same except for punctuation; sort key length will not be affected unless the strength level is also increased.

Possible values are:

  • Collator::NON_IGNORABLE(default)
  • Collator::SHIFTED
  • Collator::DEFAULT_VALUE

Example #2 ALTERNATE_HANDLING rules

  • S=3, A=N di Silva < Di Silva < diSilva < U.S.A. < USA
  • S=3, A=S di Silva = diSilva < Di Silva < U.S.A. = USA
  • S=4, A=S di Silva < diSilva < Di Silva < U.S.A. < USA

Collator::CASE_FIRST (integer)

The Case_First attribute is used to control whether uppercase letters come before lowercase letters or vice versa, in the absence of other differences in the strings. The possible values are Uppercase_First (U) and Lowercase_First (L), plus the standard Default and Off. There is almost no difference between the Off and Lowercase_First options in terms of results, so typically users will not use Lowercase_First: only Off or Uppercase_First. (People interested in the detailed differences between X and L should consult the Collation Customization). Specifying either L or U won't affect string comparison performance, but will affect the sort key length.

Possible values are:

  • Collator::OFF(default)
  • Collator::LOWER_FIRST
  • Collator::UPPER_FIRST
  • Collator:DEFAULT

Example #3 CASE_FIRST rules

  • C=X or C=L "china" < "China" < "denmark" < "Denmark"
  • C=U "China" < "china" < "Denmark" < "denmark"

Collator::CASE_LEVEL (integer)

The Case_Level attribute is used when ignoring accents but not case. In such a situation, set Strength to be Primary, and Case_Level to be On. In most locales, this setting is Off by default. There is a small string comparison performance and sort key impact if this attribute is set to be On.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Example #4 CASE_LEVEL rules

  • S=1, E=X role = Role = rôle
  • S=1, E=O role = rôle < Role

Collator::NORMALIZATION_MODE (integer)

The Normalization setting determines whether text is thoroughly normalized or not in comparison. Even if the setting is off (which is the default for many locales), text as represented in common usage will compare correctly (for details, see UTN #5). Only if the accent marks are in noncanonical order will there be a problem. If the setting is On, then the best results are guaranteed for all possible text input. There is a medium string comparison performance cost if this attribute is On, depending on the frequency of sequences that require normalization. There is no significant effect on sort key length. If the input text is known to be in NFD or NFKD normalization forms, there is no need to enable this Normalization option.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Collator::STRENGTH (integer)

The ICU Collation Service supports many levels of comparison (named "Levels", but also known as "Strengths"). Having these categories enables ICU to sort strings precisely according to local conventions. However, by allowing the levels to be selectively employed, searching for a string in text can be performed with various matching conditions. For more detailed information, see collator_set_strength chapter.

Possible values are:

  • Collator::PRIMARY
  • Collator::SECONDARY
  • Collator::TERTIARY(default)
  • Collator::QUATERNARY
  • Collator::IDENTICAL
  • Collator::DEFAULT_VALUE

Collator::HIRAGANA_QUATERNARY_MODE (integer)

Compatibility with JIS x 4061 requires the introduction of an additional level to distinguish Hiragana and Katakana characters. If compatibility with that standard is required, then this attribute should be set On, and the strength set to Quaternary. This will affect sort key length and string comparison string comparison performance.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Collator::NUMERIC_COLLATION (integer)

When turned on, this attribute generates a collation key for the numeric value of substrings of digits. This is a way to get '100' to sort AFTER '2'.

Possible values are:

  • Collator::OFF(default)
  • Collator::ON
  • Collator::DEFAULT_VALUE

Collator::DEFAULT_VALUE (integer)
Collator::PRIMARY (integer)
Collator::SECONDARY (integer)
Collator::TERTIARY (integer)
Collator::DEFAULT_STRENGTH (integer)
Collator::QUATERNARY (integer)
Collator::IDENTICAL (integer)
Collator::OFF (integer)
Collator::ON (integer)
Collator::SHIFTED (integer)
Collator::NON_IGNORABLE (integer)
Collator::LOWER_FIRST (integer)
Collator::UPPER_FIRST (integer)

The NumberFormatter class

Introduction

Programs store and operate on numbers using a locale-independent binary representation. When displaying or printing a number it is converted to a locale-specific string. For example, the number 12345.67 is "12,345.67" in the US, "12 345,67" in France and "12.345,67" in Germany.

By invoking the methods provided by the NumberFormatter class, you can format numbers, currencies, and percentages according to the specified or default locale. NumberFormatter is locale-sensitive so you need to create a new NumberFormatter for each locale. NumberFormatter methods format primitive-type numbers, such as double and output the number as a locale-specific string.

For currencies you can use currency format type to create a formatter that returns a string with the formatted number and the appropriate currency sign. Of course, the NumberFormatter class is unaware of exchange rates so, the number output is the same regardless of the specified currency. This means that the same number has different monetary values depending on the currency locale. If the number is 9988776.65 the results will be:

  • 9 988 776,65 € in France
  • 9.988.776,65 € in Germany
  • $9,988,776.65 in the United States

In order to format percentages, create a locale-specific formatter with percentage format type. With this formatter, a decimal fraction such as 0.75 is displayed as 75%.

For more complex formatting, like spelled-out numbers, the rule-based number formatters are used.

Class synopsis

NumberFormatter
class NumberFormatter {
/* Methods */
public __construct ( string $locale , int $style [, string $pattern ] )
public static NumberFormatter create ( string $locale , int $style [, string $pattern ] )
public string formatCurrency ( float $value , string $currency )
public string format ( number $value [, int $type ] )
public int getAttribute ( int $attr )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public string getLocale ([ int $type ] )
public string getPattern ( void )
public string getSymbol ( int $attr )
public string getTextAttribute ( int $attr )
public float parseCurrency ( string $value , string &$currency [, int &$position ] )
public mixed parse ( string $value [, int $type [, int &$position ]] )
public bool setAttribute ( int $attr , int $value )
public bool setPattern ( string $pattern )
public bool setSymbol ( int $attr , string $value )
public bool setTextAttribute ( int $attr , string $value )
}

Predefined Constants

These styles are used by the numfmt_create to define the type of the formatter.

NumberFormatter::PATTERN_DECIMAL (integer)
Decimal format defined by pattern
NumberFormatter::DECIMAL (integer)
Decimal format
NumberFormatter::CURRENCY (integer)
Currency format
NumberFormatter::PERCENT (integer)
Percent format
NumberFormatter::SCIENTIFIC (integer)
Scientific format
NumberFormatter::SPELLOUT (integer)
Spellout rule-based format
NumberFormatter::ORDINAL (integer)
Ordinal rule-based format
NumberFormatter::DURATION (integer)
Duration rule-based format
NumberFormatter::PATTERN_RULEBASED (integer)
Rule-based format defined by pattern
NumberFormatter::DEFAULT_STYLE (integer)
Default format for the locale
NumberFormatter::IGNORE (integer)
Alias for PATTERN_DECIMAL

These constants define how the numbers are parsed or formatted. They should be used as arguments to numfmt_format and numfmt_parse.

NumberFormatter::TYPE_DEFAULT (integer)
Derive the type from variable type
NumberFormatter::TYPE_INT32 (integer)
Format/parse as 32-bit integer
NumberFormatter::TYPE_INT64 (integer)
Format/parse as 64-bit integer
NumberFormatter::TYPE_DOUBLE (integer)
Format/parse as floating point value
NumberFormatter::TYPE_CURRENCY (integer)
Format/parse as currency value

Number format attribute used by numfmt_get_attribute and numfmt_set_attribute.

NumberFormatter::PARSE_INT_ONLY (integer)
Parse integers only.
NumberFormatter::GROUPING_USED (integer)
Use grouping separator.
NumberFormatter::DECIMAL_ALWAYS_SHOWN (integer)
Always show decimal point.
NumberFormatter::MAX_INTEGER_DIGITS (integer)
Maximum integer digits.
NumberFormatter::MIN_INTEGER_DIGITS (integer)
Minimum integer digits.
NumberFormatter::INTEGER_DIGITS (integer)
Integer digits.
NumberFormatter::MAX_FRACTION_DIGITS (integer)
Maximum fraction digits.
NumberFormatter::MIN_FRACTION_DIGITS (integer)
Minimum fraction digits.
NumberFormatter::FRACTION_DIGITS (integer)
Fraction digits.
NumberFormatter::MULTIPLIER (integer)
Multiplier.
NumberFormatter::GROUPING_SIZE (integer)
Grouping size.
NumberFormatter::ROUNDING_MODE (integer)
Rounding Mode.
NumberFormatter::ROUNDING_INCREMENT (integer)
Rounding increment.
NumberFormatter::FORMAT_WIDTH (integer)
The width to which the output of format() is padded.
NumberFormatter::PADDING_POSITION (integer)
The position at which padding will take place. See pad position constants for possible argument values.
NumberFormatter::SECONDARY_GROUPING_SIZE (integer)
Secondary grouping size.
NumberFormatter::SIGNIFICANT_DIGITS_USED (integer)
Use significant digits.
NumberFormatter::MIN_SIGNIFICANT_DIGITS (integer)
Minimum significant digits.
NumberFormatter::MAX_SIGNIFICANT_DIGITS (integer)
Maximum significant digits.
NumberFormatter::LENIENT_PARSE (integer)
Lenient parse mode used by rule-based formats.

Number format text attribute used by numfmt_get_text_attribute and numfmt_set_text_attribute.

NumberFormatter::POSITIVE_PREFIX (integer)
Positive prefix.
NumberFormatter::POSITIVE_SUFFIX (integer)
Positive suffix.
NumberFormatter::NEGATIVE_PREFIX (integer)
Negative prefix.
NumberFormatter::NEGATIVE_SUFFIX (integer)
Negative suffix.
NumberFormatter::PADDING_CHARACTER (integer)
The character used to pad to the format width.
NumberFormatter::CURRENCY_CODE (integer)
The ISO currency code.
NumberFormatter::DEFAULT_RULESET (integer)
The default rule set. This is only available with rule-based formatters.
NumberFormatter::PUBLIC_RULESETS (integer)
The public rule sets. This is only available with rule-based formatters. This is a read-only attribute. The public rulesets are returned as a single string, with each ruleset name delimited by ';' (semicolon).

Number format symbols used by numfmt_get_symbol and numfmt_set_symbol.

NumberFormatter::DECIMAL_SEPARATOR_SYMBOL (integer)
The decimal separator.
NumberFormatter::GROUPING_SEPARATOR_SYMBOL (integer)
The grouping separator.
NumberFormatter::PATTERN_SEPARATOR_SYMBOL (integer)
The pattern separator.
NumberFormatter::PERCENT_SYMBOL (integer)
The percent sign.
NumberFormatter::ZERO_DIGIT_SYMBOL (integer)
Zero.
NumberFormatter::DIGIT_SYMBOL (integer)
Character representing a digit in the pattern.
NumberFormatter::MINUS_SIGN_SYMBOL (integer)
The minus sign.
NumberFormatter::PLUS_SIGN_SYMBOL (integer)
The plus sign.
NumberFormatter::CURRENCY_SYMBOL (integer)
The currency symbol.
NumberFormatter::INTL_CURRENCY_SYMBOL (integer)
The international currency symbol.
NumberFormatter::MONETARY_SEPARATOR_SYMBOL (integer)
The monetary separator.
NumberFormatter::EXPONENTIAL_SYMBOL (integer)
The exponential symbol.
NumberFormatter::PERMILL_SYMBOL (integer)
Per mill symbol.
NumberFormatter::PAD_ESCAPE_SYMBOL (integer)
Escape padding character.
NumberFormatter::INFINITY_SYMBOL (integer)
Infinity symbol.
NumberFormatter::NAN_SYMBOL (integer)
Not-a-number symbol.
NumberFormatter::SIGNIFICANT_DIGIT_SYMBOL (integer)
Significant digit symbol.
NumberFormatter::MONETARY_GROUPING_SEPARATOR_SYMBOL (integer)
The monetary grouping separator.

Rounding mode values used by numfmt_get_attribute and numfmt_set_attribute with NumberFormatter::ROUNDING_MODE attribute.

NumberFormatter::ROUND_CEILING (integer)
Rounding mode to round towards positive infinity.
NumberFormatter::ROUND_DOWN (integer)
Rounding mode to round towards zero.
NumberFormatter::ROUND_FLOOR (integer)
Rounding mode to round towards negative infinity.
NumberFormatter::ROUND_HALFDOWN (integer)
Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round down.
NumberFormatter::ROUND_HALFEVEN (integer)
Rounding mode to round towards the "nearest neighbor" unless both neighbors are equidistant, in which case, round towards the even neighbor.
NumberFormatter::ROUND_HALFUP (integer)
Rounding mode to round towards "nearest neighbor" unless both neighbors are equidistant, in which case round up.
NumberFormatter::ROUND_UP (integer)
Rounding mode to round away from zero.

Pad position values used by numfmt_get_attribute and numfmt_set_attribute with NumberFormatter::PADDING_POSITION attribute.

NumberFormatter::PAD_AFTER_PREFIX (integer)
Pad characters inserted after the prefix.
NumberFormatter::PAD_AFTER_SUFFIX (integer)
Pad characters inserted after the suffix.
NumberFormatter::PAD_BEFORE_PREFIX (integer)
Pad characters inserted before the prefix.
NumberFormatter::PAD_BEFORE_SUFFIX (integer)
Pad characters inserted before the suffix.

The Locale class

Introduction

A "Locale" is an identifier used to get language, culture, or regionally-specific behavior from an API. PHP locales are organized and identified the same way that the CLDR locales used by ICU (and many vendors of Unix-like operating systems, the Mac, Java, and so forth) use. Locales are identified using RFC 4646 language tags (which use hyphen, not underscore) in addition to the more traditional underscore-using identifiers. Unless otherwise noted the functions in this class are tolerant of both formats.

Examples of identifiers include:

  • en-US (English, United States)
  • zh-Hant-TW (Chinese, Traditional Script, Taiwan)
  • fr-CA, fr-FR (French for Canada and France respectively)

The Locale class (and related procedural functions) are used to interact with locale identifiers--to verify that an ID is well-formed, valid, etc. The extensions used by CLDR in UAX #35 (and inherited by ICU) are valid and used wherever they would be in ICU normally.

Locales cannot be instantiated as objects. All of the functions/methods provided are static.

The null or empty string obtains the "root" locale. The "root" locale is equivalent to "en_US_POSIX" in CLDR. Language tags (and thus locale identifiers) are case insensitive. There exists a canonicalization function to make case match the specification.

Class synopsis

Locale
class Locale {
/* Methods */
public static string acceptFromHttp ( string $header )
public static string canonicalize ( string $locale )
public static string composeLocale ( array $subtags )
public static bool filterMatches ( string $langtag , string $locale [, bool $canonicalize = false ] )
public static array getAllVariants ( string $locale )
public static string getDefault ( void )
public static string getDisplayLanguage ( string $locale [, string $in_locale ] )
public static string getDisplayName ( string $locale [, string $in_locale ] )
public static string getDisplayRegion ( string $locale [, string $in_locale ] )
public static string getDisplayScript ( string $locale [, string $in_locale ] )
public static string getDisplayVariant ( string $locale [, string $in_locale ] )
public static array getKeywords ( string $locale )
public static string getPrimaryLanguage ( string $locale )
public static string getRegion ( string $locale )
public static string getScript ( string $locale )
public static string lookup ( array $langtag , string $locale [, bool $canonicalize = false [, string $default ]] )
public static array parseLocale ( string $locale )
public static bool setDefault ( string $locale )
}

Predefined Constants

Locale::DEFAULT_LOCALE (null)
Used as locale parameter with the methods of the various locale affected classes, such as NumberFormatter. This constant would make the methods to use default locale.

These constants describe the choice of the locale for getLocalte method of different classes.

Locale::ACTUAL_LOCALE (string)
This is locale the data actually comes from.
Locale::VALID_LOCALE (string)
This is the most specific locale supported by ICU.

These constants define how the Locales are parsed or composed. They should be used as keys in the argument array to locale_compose and are returned from locale_parse as keys of the returned associative array.

Locale::LANG_TAG (string)
Language subtag
Locale::EXTLANG_TAG (string)
Extended language subtag
Locale::SCRIPT_TAG (string)
Script subtag
Locale::REGION_TAG (string)
Region subtag
Locale::VARIANT_TAG (string)
Variant subtag
Locale::GRANDFATHERED_LANG_TAG (string)
Grandfathered Language subtag
Locale::PRIVATE_TAG (string)
Private subtag

The Normalizer class

Introduction

Normalization is a process that involves transforming characters and sequences of characters into a formally-defined underlying representation. This process is most important when text needs to be compared for sorting and searching, but it is also used when storing text to ensure that the text is stored in a consistent representation.

The Unicode Consortium has defined a number of normalization forms reflecting the various needs of applications:

  • Normalization Form D (NFD) - Canonical Decomposition
  • Normalization Form C (NFC) - Canonical Decomposition followed by Canonical Composition
  • Normalization Form KD (NFKD) - Compatibility Decomposition
  • Normalization Form KC (NFKC) - Compatibility Decomposition followed by Canonical Composition
The different forms are defined in terms of a set of transformations on the text, transformations that are expressed by both an algorithm and a set of data files.

Class synopsis

Normalizer
class Normalizer {
/* Methods */
public static bool isNormalized ( string $input [, int $form = Normalizer::FORM_C ] )
public static string normalize ( string $input [, int $form = Normalizer::FORM_C ] )
}

Predefined Constants

The following constants define the normalization form used by the normalizer:

Normalizer::FORM_C (integer)
Normalization Form C (NFC) - Canonical Decomposition followed by Canonical Composition
Normalizer::FORM_D (integer)
Normalization Form D (NFD) - Canonical Decomposition
Normalizer::FORM_KC (integer)
Normalization Form KC (NFKC) - Compatibility Decomposition, followed by Canonical Composition
Normalizer::FORM_KD (integer)
Normalization Form KD (NFKD) - Compatibility Decomposition
Normalizer::NONE (integer)
No decomposition/composition
Normalizer::OPTION_DEFAULT (integer)
Default normalization options

The MessageFormatter class

Introduction

MessageFormatter is a concrete class that enables users to produce concatenated, language-neutral messages. The methods supplied in this class are used to build all the messages that are seen by end users.

The MessageFormatter class assembles messages from various fragments (such as text fragments, numbers, and dates) supplied by the program. Because of the MessageFormatter class, the program does not need to know the order of the fragments. The class uses the formatting specifications for the fragments to assemble them into a message that is contained in a single string within a resource bundle. For example, MessageFormatter enables you to print the phrase "Finished printing x out of y files..." in a manner that still allows for flexibility in translation.

Previously, an end user message was created as a sentence and handled as a string. This procedure created problems for localizers because the sentence structure, word order, number format and so on are very different from language to language. The language-neutral way to create messages keeps each part of the message separate and provides keys to the data. Using these keys, the MessageFormatter class can concatenate the parts of the message, localize them, and display a well-formed string to the end user.

MessageFormatter takes a set of objects, formats them, and then inserts the formatted strings into the pattern at the appropriate places. Choice formats can be used in conjunction with MessageFormatter to handle plurals, match numbers, and select from an array of items. Typically, the message format will come from resources and the arguments will be dynamically set at runtime.

Class synopsis

MessageFormatter
class MessageFormatter {
/* Methods */
public __construct ( string $locale , string $pattern )
public static MessageFormatter create ( string $locale , string $pattern )
public static string formatMessage ( string $locale , string $pattern , array $args )
public string format ( array $args )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public string getLocale ( void )
public string getPattern ( void )
public static array parseMessage ( string $locale , string $pattern , string $source )
public array parse ( string $value )
public bool setPattern ( string $pattern )
}

The IntlCalendar class

Introduction

Class synopsis

IntlCalendar
class IntlCalendar {
/* Constants */
const integer IntlCalendar::FIELD_ERA = 0 ;
const integer IntlCalendar::FIELD_YEAR = 1 ;
const integer IntlCalendar::FIELD_MONTH = 2 ;
const integer IntlCalendar::FIELD_WEEK_OF_YEAR = 3 ;
const integer IntlCalendar::FIELD_WEEK_OF_MONTH = 4 ;
const integer IntlCalendar::FIELD_DATE = 5 ;
const integer IntlCalendar::FIELD_DAY_OF_YEAR = 6 ;
const integer IntlCalendar::FIELD_DAY_OF_WEEK = 7 ;
const integer IntlCalendar::FIELD_DAY_OF_WEEK_IN_MONTH = 8 ;
const integer IntlCalendar::FIELD_AM_PM = 9 ;
const integer IntlCalendar::FIELD_HOUR = 10 ;
const integer IntlCalendar::FIELD_HOUR_OF_DAY = 11 ;
const integer IntlCalendar::FIELD_MINUTE = 12 ;
const integer IntlCalendar::FIELD_SECOND = 13 ;
const integer IntlCalendar::FIELD_MILLISECOND = 14 ;
const integer IntlCalendar::FIELD_ZONE_OFFSET = 15 ;
const integer IntlCalendar::FIELD_DST_OFFSET = 16 ;
const integer IntlCalendar::FIELD_YEAR_WOY = 17 ;
const integer IntlCalendar::FIELD_DOW_LOCAL = 18 ;
const integer IntlCalendar::FIELD_EXTENDED_YEAR = 19 ;
const integer IntlCalendar::FIELD_JULIAN_DAY = 20 ;
const integer IntlCalendar::FIELD_MILLISECONDS_IN_DAY = 21 ;
const integer IntlCalendar::FIELD_IS_LEAP_MONTH = 22 ;
const integer IntlCalendar::FIELD_FIELD_COUNT = 23 ;
const integer IntlCalendar::FIELD_DAY_OF_MONTH = 5 ;
const integer IntlCalendar::DOW_SUNDAY = 1 ;
const integer IntlCalendar::DOW_MONDAY = 2 ;
const integer IntlCalendar::DOW_TUESDAY = 3 ;
const integer IntlCalendar::DOW_WEDNESDAY = 4 ;
const integer IntlCalendar::DOW_THURSDAY = 5 ;
const integer IntlCalendar::DOW_FRIDAY = 6 ;
const integer IntlCalendar::DOW_SATURDAY = 7 ;
const integer IntlCalendar::DOW_TYPE_WEEKDAY = 0 ;
const integer IntlCalendar::DOW_TYPE_WEEKEND = 1 ;
const integer IntlCalendar::DOW_TYPE_WEEKEND_OFFSET = 2 ;
const integer IntlCalendar::DOW_TYPE_WEEKEND_CEASE = 3 ;
const integer IntlCalendar::WALLTIME_FIRST = 1 ;
const integer IntlCalendar::WALLTIME_LAST = 0 ;
const integer IntlCalendar::WALLTIME_NEXT_VALID = 2 ;
/* Methods */
public bool add ( int $field , int $amount )
bool intlcal_add ( IntlCalendar $cal , int $field , int $amount )
public bool after ( IntlCalendar $other )
bool intlcal_after ( IntlCalendar $cal , IntlCalendar $other )
public bool before ( IntlCalendar $other )
bool intlcal_before ( IntlCalendar $cal , IntlCalendar $other )
public bool clear ([ int $field = NULL ] )
bool intlcal_clear ( IntlCalendar $cal [, int $field = NULL ] )
private __construct ( void )
public static IntlCalendar createInstance ([ mixed $timeZone = NULL [, string $locale = "" ]] )
IntlCalendar intlcal_create_instance ([ mixed $timeZone = NULL [, string $locale = "" ]] )
public bool equals ( IntlCalendar $other )
bool intlcal_equals ( IntlCalendar $cal , IntlCalendar $other )
public int fieldDifference ( float $when , int $field )
int intlcal_field_difference ( IntlCalendar $cal , float $when , int $field )
public static IntlCalendar fromDateTime ( mixed $dateTime )
IntlCalendar intlcal_from_date_time ( mixed $dateTime )
public int get ( int $field )
int intlcal_get ( IntlCalendar $cal , int $field )
public int getActualMaximum ( int $field )
int intlcal_get_actual_maximum ( IntlCalendar $cal , int $field )
public int getActualMinimum ( int $field )
int intlcal_get_actual_minimum ( IntlCalendar $cal , int $field )
public static array getAvailableLocales ( void )
array intlcal_get_available_locales ( void )
public int getDayOfWeekType ( int $dayOfWeek )
int intlcal_get_day_of_week_type ( IntlCalendar $cal , int $dayOfWeek )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public int getFirstDayOfWeek ( void )
int intlcal_get_first_day_of_week ( IntlCalendar $cal )
public int getGreatestMinimum ( int $field )
int intlcal_get_greatest_minimum ( IntlCalendar $cal , int $field )
public static Iterator getKeywordValuesForLocale ( string $key , string $locale , boolean $commonlyUsed )
Iterator intlcal_get_keyword_values_for_locale ( string $key , string $locale , boolean $commonlyUsed )
public int getLeastMaximum ( int $field )
int intlcal_get_least_maximum ( IntlCalendar $cal , int $field )
public string getLocale ( int $localeType )
string intlcal_get_locale ( IntlCalendar $cal , int $localeType )
public int getMaximum ( int $field )
int intlcal_get_maximum ( IntlCalendar $cal , int $field )
public int getMinimalDaysInFirstWeek ( void )
int intlcal_get_minimal_days_in_first_week ( IntlCalendar $cal )
public int getMinimum ( int $field )
int intlcal_get_minimum ( IntlCalendar $cal , int $field )
public static float getNow ( void )
float intlcal_get_now ( void )
public int getRepeatedWallTimeOption ( void )
int intlcal_get_repeated_wall_time_option ( IntlCalendar $cal )
public int getSkippedWallTimeOption ( void )
int intlcal_get_skipped_wall_time_option ( IntlCalendar $cal )
public float getTime ( void )
float intlcal_get_time ( IntlCalendar $cal )
public IntlTimeZone getTimeZone ( void )
IntlTimeZone intlcal_get_time_zone ( IntlCalendar $cal )
public string getType ( void )
string intlcal_get_type ( IntlCalendar $cal )
public int getWeekendTransition ( string $dayOfWeek )
int intlcal_get_weekend_transition ( IntlCalendar $cal , string $dayOfWeek )
public bool inDaylightTime ( void )
bool intlcal_in_daylight_time ( IntlCalendar $cal )
public bool isEquivalentTo ( IntlCalendar $other )
bool intlcal_is_equivalent_to ( IntlCalendar $cal , IntlCalendar $other )
public bool isLenient ( void )
bool intlcal_is_lenient ( IntlCalendar $cal )
public bool isSet ( int $field )
bool intlcal_is_set ( IntlCalendar $cal , int $field )
public bool isWeekend ([ float $date = NULL ] )
bool intlcal_is_weekend ( IntlCalendar $cal [, float $date = NULL ] )
public bool roll ( int $field , mixed $amountOrUpOrDown )
bool intlcal_roll ( IntlCalendar $cal , int $field , mixed $amountOrUpOrDown )
public bool set ( int $field , int $value )
public bool set ( int $year , int $month [, int $dayOfMonth = NULL [, int $hour = NULL [, int $minute = NULL [, int $second = NULL ]]]] )
bool intlcal_set ( IntlCalendar $cal , int $field , int $value )
bool intlcal_set ( IntlCalendar $cal , int $year , int $month [, int $dayOfMonth = NULL [, int $hour = NULL [, int $minute = NULL [, int $second = NULL ]]]] )
public bool setFirstDayOfWeek ( int $dayOfWeek )
bool intlcal_set_first_day_of_week ( IntlCalendar $cal , int $dayOfWeek )
public ReturnType setLenient ( string $isLenient )
ReturnType intlcal_set_lenient ( IntlCalendar $cal , string $isLenient )
public bool setMinimalDaysInFirstWeek ( int $minimalDays )
bool intlcal_get_minimal_days_in_first_week ( IntlCalendar $cal , int $minimalDays )
public bool setRepeatedWallTimeOption ( int $wallTimeOption )
bool intlcal_set_repeated_wall_time_option ( IntlCalendar $cal , int $wallTimeOption )
public bool setSkippedWallTimeOption ( int $wallTimeOption )
bool intlcal_set_skipped_wall_time_option ( IntlCalendar $cal , int $wallTimeOption )
public bool setTime ( float $date )
bool intlcal_set_time ( IntlCalendar $cal , float $date )
public bool setTimeZone ( mixed $timeZone )
bool intlcal_set_time_zone ( IntlCalendar $cal , mixed $timeZone )
public DateTime toDateTime ( void )
DateTime intlcal_to_date_time ( IntlCalendar $cal )
}

Predefined Constants

IntlCalendar::FIELD_ERA

Calendar field numerically representing an era, for instance 1 for AD and 0 for BC in the Gregorian/Julian calendars and 235 for the Heisei (平成) era in the Japanese calendar. Not all calendars have more than one era.

IntlCalendar::FIELD_YEAR

Calendar field for the year. This is not unique across eras. If the calendar type has more than one era, generally the minimum value for this field will be 1.

IntlCalendar::FIELD_MONTH

Calendar field for the month. The month sequence is zero-based, so Janurary (here used to signify the first month of the calendar; this may be called another name, such as Muharram in the Islamic calendar) is represented by 0, February by 1, …, December by 11 and, for calendars that have it, the 13th or leap month by 12.

IntlCalendar::FIELD_WEEK_OF_YEAR

Calendar field for the number of the week of the year. This depends on which day of the week is deemed to start the week and the minimal number of days in a week.

IntlCalendar::FIELD_WEEK_OF_MONTH

Calendar field for the number of the week of the month. This depends on which day of the week is deemed to start the week and the minimal number of days in a week.

IntlCalendar::FIELD_DATE

Calendar field for the day of the month. The same as IntlCalendar::FIELD_DAY_OF_MONTH, which has a clearer name.

IntlCalendar::FIELD_DAY_OF_YEAR

Calendar field for the day of the year. For the Gregorian calendar, starts with 1 and ends with 365 or 366.

IntlCalendar::FIELD_DAY_OF_WEEK

Calendar field for the day of the week. Its values start with 1 (Sunday, see IntlCalendar::DOW_SUNDAY and subsequent constants) and the last valid value is 7 (Saturday).

IntlCalendar::FIELD_DAY_OF_WEEK_IN_MONTH

Given a day of the week (Sunday, Monday, …), this calendar field assigns an ordinal to such a day of the week in a specific month. Thus, if the value of this field is 1 and the value of the day of the week is 2 (Monday), then the set day of the month is the 1st Monday of the month; the maximum value is 5.

Additionally, the value 0 and negative values are also allowed. The value 0 encompasses the seven days that occur immediately before the first seven days of a month (which therefore have a ‘day of week in month’ with value 1). Negative values starts counting from the end of the month – -1 points to the last occurrence of a day of the week in a month, -2 to the second last, and so on.

Unlike IntlCalendar::FIELD_WEEK_OF_MONTH and IntlCalendar::FIELD_WEEK_OF_YEAR, this value does not depend on IntlCalendar::getFirstDayOfWeek or on IntlCalendar::getMinimalDaysInFirstWeek. The first Monday is the first Monday, even if it occurs in a week that belongs to the previous month.

IntlCalendar::FIELD_AM_PM

Calendar field indicating whether a time is before noon (value 0, AM) or after (1). Midnight is AM, noon is PM.

IntlCalendar::FIELD_HOUR

Calendar field for the hour, without specifying whether itʼs in the morning or in the afternoon. Valid values are 0 to 11.

IntlCalendar::FIELD_HOUR_OF_DAY

Calendar field for the full (24h) hour of the day. Valid values are 0 to 23.

IntlCalendar::FIELD_MINUTE

Calendar field for the minutes component of the time.

IntlCalendar::FIELD_SECOND

Calendar field for the seconds component of the time.

IntlCalendar::FIELD_MILLISECOND

Calendar field the milliseconds component of the time.

IntlCalendar::FIELD_ZONE_OFFSET

Calendar field indicating the raw offset of the timezone, in milliseconds. The raw offset is the timezone offset, excluding any offset due to daylight saving time.

IntlCalendar::FIELD_DST_OFFSET

Calendar field for the daylight saving time offset of the calendarʼs timezone, in milliseconds, if active for calendarʼs time.

IntlCalendar::FIELD_YEAR_WOY

Calendar field representing the year for week of year purposes.

IntlCalendar::FIELD_DOW_LOCAL

Calendar field for the localized day of the week. This is a value betwen 1 and 7, 1 being used for the day of the week that matches the value returned by IntlCalendar::getFirstDayOfWeek.

IntlCalendar::FIELD_EXTENDED_YEAR

Calendar field for a year number representation that is continuous across eras. For the Gregorian calendar, the value of this field matches that of IntlCalendar::FIELD_YEAR for AD years; a BC year y is represented by -y + 1.

IntlCalendar::FIELD_JULIAN_DAY

Calendar field for a modified Julian day number. It is different from a conventional Julian day number in that its transitions occur at local zone midnight rather than at noon UTC. It uniquely identifies a date.

IntlCalendar::FIELD_MILLISECONDS_IN_DAY

Calendar field encompassing the information in IntlCalendar::FIELD_HOUR_OF_DAY, IntlCalendar::FIELD_MINUTE, IntlCalendar::FIELD_SECOND and IntlCalendar::FIELD_MILLISECOND. Range is from the 0 to 24 * 3600 * 1000 - 1. It is not the amount of milliseconds ellapsed in the day since on DST transitions it will have discontinuities analog to those of the wall time.

IntlCalendar::FIELD_IS_LEAP_MONTH

Calendar field whose value is 1 for indicating a leap month and 0 otherwise.

IntlCalendar::FIELD_FIELD_COUNT

The total number of fields.

IntlCalendar::FIELD_DAY_OF_MONTH

Alias for IntlCalendar::FIELD_DATE.

IntlCalendar::DOW_SUNDAY

Sunday.

IntlCalendar::DOW_MONDAY

Monday.

IntlCalendar::DOW_TUESDAY

Tuesday.

IntlCalendar::DOW_WEDNESDAY

Wednesday.

IntlCalendar::DOW_THURSDAY

Thursday.

IntlCalendar::DOW_FRIDAY

Friday.

IntlCalendar::DOW_SATURDAY

Saturday.

IntlCalendar::DOW_TYPE_WEEKDAY

Output of IntlCalendar::getDayOfWeekType indicating a day of week is a weekday.

IntlCalendar::DOW_TYPE_WEEKEND

Output of IntlCalendar::getDayOfWeekType indicating a day of week belongs to the weekend.

IntlCalendar::DOW_TYPE_WEEKEND_OFFSET

Output of IntlCalendar::getDayOfWeekType indicating the weekend begins during the given day of week.

IntlCalendar::DOW_TYPE_WEEKEND_CEASE

Output of IntlCalendar::getDayOfWeekType indicating the weekend ends during the given day of week.

IntlCalendar::WALLTIME_FIRST

Output of IntlCalendar::getSkippedWallTimeOption indicating that wall times in the skipped range should refer to the same instant as wall times with one hour less and of IntlCalendar::getRepeatedWallTimeOption indicating the wall times in the repeated range should refer to the instant of the first occurrence of such wall time.

IntlCalendar::WALLTIME_LAST

Output of IntlCalendar::getSkippedWallTimeOption indicating that wall times in the skipped range should refer to the same instant as wall times with one hour after and of IntlCalendar::getRepeatedWallTimeOption indicating the wall times in the repeated range should refer to the instant of the second occurrence of such wall time.

IntlCalendar::WALLTIME_NEXT_VALID

Output of IntlCalendar::getSkippedWallTimeOption indicating that wall times in the skipped range should refer to the instant when the daylight saving time transition occurs (begins).

The IntlTimeZone class

Introduction

Class synopsis

IntlTimeZone
class IntlTimeZone {
/* Constants */
const integer IntlTimeZone::DISPLAY_SHORT = 1 ;
const integer IntlTimeZone::DISPLAY_LONG = 2 ;
/* Methods */
public static integer countEquivalentIDs ( string $zoneId )
public static IntlTimeZone createDefault ( void )
public static IntlIterator createEnumeration ([ mixed $countryOrRawOffset ] )
public static IntlTimeZone createTimeZone ( string $zoneId )
public static IntlTimeZone fromDateTimeZone ( DateTimeZone $zoneId )
public static string getCanonicalID ( string $zoneId [, bool &$isSystemID ] )
public string getDisplayName ([ bool $isDaylight [, integer $style [, string $locale ]]] )
public integer getDSTSavings ( void )
public static string getEquivalentID ( string $zoneId , integer $index )
public integer getErrorCode ( void )
public string getErrorMessage ( void )
public static IntlTimeZone getGMT ( void )
public string getID ( void )
public integer getOffset ( float $date , bool $local , integer &$rawOffset , integer &$dstOffset )
public integer getRawOffset ( void )
public static string getTZDataVersion ( void )
public bool hasSameRules ( IntlTimeZone $otherTimeZone )
public DateTimeZone toDateTimeZone ( void )
public bool useDaylightTime ( void )
}

Predefined Constants

IntlTimeZone::DISPLAY_SHORT

IntlTimeZone::DISPLAY_LONG

The IntlDateFormatter class

Introduction

Date Formatter is a concrete class that enables locale-dependent formatting/parsing of dates using pattern strings and/or canned patterns.

This class represents the ICU date formatting functionality. It allows users to display dates in a localized format or to parse strings into PHP date values using pattern strings and/or canned patterns.

Class synopsis

IntlDateFormatter
class IntlDateFormatter {
/* Methods */
public __construct ( string $locale , int $datetype , int $timetype [, mixed $timezone = NULL [, mixed $calendar = NULL [, string $pattern = "" ]]] )
public static IntlDateFormatter create ( string $locale , int $datetype , int $timetype [, mixed $timezone = NULL [, mixed $calendar = NULL [, string $pattern = "" ]]] )
public string format ( mixed $value )
public static string formatObject ( object $object [, mixed $format = NULL [, string $locale = NULL ]] )
int getCalendar ( void )
public int getDateType ( void )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public string getLocale ([ int $which ] )
public string getPattern ( void )
public int getTimeType ( void )
public string getTimeZoneId ( void )
public IntlCalendar getCalendarObject ( void )
public IntlTimeZone getTimeZone ( void )
public bool isLenient ( void )
public array localtime ( string $value [, int &$position ] )
public int parse ( string $value [, int &$position ] )
bool setCalendar ( mixed $which )
public bool setLenient ( bool $lenient )
public bool setPattern ( string $pattern )
public bool setTimeZoneId ( string $zone )
public boolean setTimeZone ( mixed $zone )
}

Predefined Constants

These constants are used to specify different formats in the constructor for DateType and TimeType.

IntlDateFormatter::NONE (integer)
Do not include this element
IntlDateFormatter::FULL (integer)
Completely specified style (Tuesday, April 12, 1952 AD or 3:30:42pm PST)
IntlDateFormatter::LONG (integer)
Long style (January 12, 1952 or 3:30:32pm)
IntlDateFormatter::MEDIUM (integer)
Medium style (Jan 12, 1952)
IntlDateFormatter::SHORT (integer)
Most abbreviated style, only essential data (12/13/52 or 3:30pm)

The following int constants are used to specify the calendar. These calendars are all based directly on the Gregorian calendar. Non-Gregorian calendars need to be specified in locale. Examples might include locale="hi@calendar=BUDDHIST".

IntlDateFormatter::TRADITIONAL (integer)
Non-Gregorian Calendar
IntlDateFormatter::GREGORIAN (integer)
Gregorian Calendar

The ResourceBundle class

Introduction

Localized software products often require sets of data that are to be customized depending on current locale, e.g.: messages, labels, formatting patterns. ICU resource mechanism allows to define sets of resources that the application can load on locale basis, while accessing them in unified locale-independent fashion.

This class implements access to ICU resource data files. These files are binary data arrays which ICU uses to store the localized data.

ICU resource bundle can hold simple resources and complex resources. Complex resources are containers which can be either integer-indexed or string-indexed (just like PHP arrays). Simple resources can be of the following types: string, integer, binary data field or integer array.

ResourceBundle supports direct access to the data through array access pattern and iteration via foreach, as well as access via class methods. The result will be PHP value for simple resources and ResourceBundle object for complex ones. All resources are read-only.

Class synopsis

ResourceBundle
class ResourceBundle {
/* Methods */
public __construct ( string $locale , string $bundlename [, bool $fallback ] )
public int count ( void )
public static ResourceBundle create ( string $locale , string $bundlename [, bool $fallback ] )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public mixed get ( string|int $index [, bool $fallback = TRUE ] )
public array getLocales ( string $bundlename )
}

The Spoofchecker class

Introduction

This class is provided because Unicode contains large number of characters and incorporates the varied writing systems of the world and their incorrect usage can expose programs or systems to possible security attacks using characters similarity.

Provided methods alllow to check whether an individual string is likely an attempt at confusing the reader (spoof detection), such as "pаypаl" spelled with Cyrillic 'а' characters.

Class synopsis

Spoofchecker
class Spoofchecker {
/* Constants */
const integer Spoofchecker::SINGLE_SCRIPT_CONFUSABLE = 1 ;
const integer Spoofchecker::MIXED_SCRIPT_CONFUSABLE = 2 ;
const integer Spoofchecker::WHOLE_SCRIPT_CONFUSABLE = 4 ;
const integer Spoofchecker::ANY_CASE = 8 ;
const integer Spoofchecker::SINGLE_SCRIPT = 16 ;
const integer Spoofchecker::INVISIBLE = 32 ;
const integer Spoofchecker::CHAR_LIMIT = 64 ;
/* Methods */
public bool areConfusable ( string $str1 , string $str2 [, string &$error ] )
public __construct ( void )
public bool isSuspicious ( string $text [, string &$error ] )
public void setAllowedLocales ( string $locale_list )
public void setChecks ( long $checks )
}

Predefined Constants

Spoofchecker::SINGLE_SCRIPT_CONFUSABLE

Spoofchecker::MIXED_SCRIPT_CONFUSABLE

Spoofchecker::WHOLE_SCRIPT_CONFUSABLE

Spoofchecker::ANY_CASE

Spoofchecker::SINGLE_SCRIPT

Spoofchecker::INVISIBLE

Spoofchecker::CHAR_LIMIT

The Transliterator class

Introduction

Transliterator provides transliteration of strings.

Class synopsis

Transliterator
class Transliterator {
/* Constants */
const integer Transliterator::FORWARD = 0 ;
const integer Transliterator::REVERSE = 1 ;
/* Properties */
public $id ;
/* Methods */
__construct ( void )
public static Transliterator create ( string $id [, int $direction ] )
public static Transliterator createFromRules ( string $rules [, string $direction ] )
public Transliterator createInverse ( void )
public int getErrorCode ( void )
public string getErrorMessage ( void )
public static array listIDs ( void )
public string transliterate ( string $subject [, int $start [, int $end ]] )
}

Properties

id

Predefined Constants

Transliterator::FORWARD

Transliterator::REVERSE

The IntlBreakIterator class

Introduction

A “break iterator” is an ICU object that exposes methods for locating boundaries in text (e.g. word or sentence boundaries). The PHP IntlBreakIterator serves as the base class for all types of ICU break iterators. Where extra functionality is available, the intl extension may expose the ICU break iterator with suitable subclasses, such as IntlRuleBasedBreakIterator or IntlCodePointBreaIterator.

This class implements Traversable. Traversing an IntlBreakIterator yields non-negative integer values representing the successive locations of the text boundaries, expressed as UTF-8 code units (byte) counts, taken from the beggining of the text (which has the location 0). The keys yielded by the iterator simply form the sequence of natural numbers {0, 1, 2, …}.

Class synopsis

IntlBreakIterator
class IntlBreakIterator implements Traversable {
/* Constants */
const integer IntlBreakIterator::DONE = -1 ;
const integer IntlBreakIterator::WORD_NONE = 0 ;
const integer IntlBreakIterator::WORD_NONE_LIMIT = 100 ;
const integer IntlBreakIterator::WORD_NUMBER = 100 ;
const integer IntlBreakIterator::WORD_NUMBER_LIMIT = 200 ;
const integer IntlBreakIterator::WORD_LETTER = 200 ;
const integer IntlBreakIterator::WORD_LETTER_LIMIT = 300 ;
const integer IntlBreakIterator::WORD_KANA = 300 ;
const integer IntlBreakIterator::WORD_KANA_LIMIT = 400 ;
const integer IntlBreakIterator::WORD_IDEO = 400 ;
const integer IntlBreakIterator::WORD_IDEO_LIMIT = 500 ;
const integer IntlBreakIterator::LINE_SOFT = 0 ;
const integer IntlBreakIterator::LINE_SOFT_LIMIT = 100 ;
const integer IntlBreakIterator::LINE_HARD = 100 ;
const integer IntlBreakIterator::LINE_HARD_LIMIT = 200 ;
const integer IntlBreakIterator::SENTENCE_TERM = 0 ;
const integer IntlBreakIterator::SENTENCE_TERM_LIMIT = 100 ;
const integer IntlBreakIterator::SENTENCE_SEP = 100 ;
const integer IntlBreakIterator::SENTENCE_SEP_LIMIT = 200 ;
/* Methods */
private __construct ( void )
public static ReturnType createCharacterInstance ([ string $"locale" ] )
public static ReturnType createCodePointInstance ( void )
public static ReturnType createLineInstance ([ string $"locale" ] )
public static ReturnType createSentenceInstance ([ string $"locale" ] )
public static ReturnType createTitleInstance ([ string $"locale" ] )
public static ReturnType createWordInstance ([ string $"locale" ] )
public ReturnType current ( void )
public ReturnType first ( void )
public ReturnType following ( string $"offset" )
public ReturnType getErrorCode ( void )
ReturnType intl_get_error_code ( void )
public ReturnType getErrorMessage ( void )
ReturnType intl_get_error_message ( void )
public ReturnType getLocale ( string $"locale_type" )
public ReturnType getPartsIterator ([ string $"key_type" ] )
public ReturnType getText ( void )
public ReturnType isBoundary ( string $"offset" )
public ReturnType last ( void )
public ReturnType next ([ string $"offset" ] )
public ReturnType preceding ( string $"offset" )
public ReturnType previous ( void )
public ReturnType setText ( string $"text" )
}

Predefined Constants

IntlBreakIterator::DONE

IntlBreakIterator::WORD_NONE

IntlBreakIterator::WORD_NONE_LIMIT

IntlBreakIterator::WORD_NUMBER

IntlBreakIterator::WORD_NUMBER_LIMIT

IntlBreakIterator::WORD_LETTER

IntlBreakIterator::WORD_LETTER_LIMIT

IntlBreakIterator::WORD_KANA

IntlBreakIterator::WORD_KANA_LIMIT

IntlBreakIterator::WORD_IDEO

IntlBreakIterator::WORD_IDEO_LIMIT

IntlBreakIterator::LINE_SOFT

IntlBreakIterator::LINE_SOFT_LIMIT

IntlBreakIterator::LINE_HARD

IntlBreakIterator::LINE_HARD_LIMIT

IntlBreakIterator::SENTENCE_TERM

IntlBreakIterator::SENTENCE_TERM_LIMIT

IntlBreakIterator::SENTENCE_SEP

IntlBreakIterator::SENTENCE_SEP_LIMIT

The IntlRuleBasedBreakIterator class

Introduction

A subclass of IntlBreakIterator that encapsulates ICU break iterators whose behavior is specified using a set of rules. This is the most common kind of break iterators.

These rules are described in the » ICU Boundary Analysis User Guide.

Class synopsis

IntlRuleBasedBreakIterator
class IntlRuleBasedBreakIterator extends IntlBreakIterator implements Traversable {
/* Constants */
const integer IntlRuleBasedBreakIterator::DONE = -1 ;
const integer IntlRuleBasedBreakIterator::WORD_NONE = 0 ;
const integer IntlRuleBasedBreakIterator::WORD_NONE_LIMIT = 100 ;
const integer IntlRuleBasedBreakIterator::WORD_NUMBER = 100 ;
const integer IntlRuleBasedBreakIterator::WORD_NUMBER_LIMIT = 200 ;
const integer IntlRuleBasedBreakIterator::WORD_LETTER = 200 ;
const integer IntlRuleBasedBreakIterator::WORD_LETTER_LIMIT = 300 ;
const integer IntlRuleBasedBreakIterator::WORD_KANA = 300 ;
const integer IntlRuleBasedBreakIterator::WORD_KANA_LIMIT = 400 ;
const integer IntlRuleBasedBreakIterator::WORD_IDEO = 400 ;
const integer IntlRuleBasedBreakIterator::WORD_IDEO_LIMIT = 500 ;
const integer IntlRuleBasedBreakIterator::LINE_SOFT = 0 ;
const integer IntlRuleBasedBreakIterator::LINE_SOFT_LIMIT = 100 ;
const integer IntlRuleBasedBreakIterator::LINE_HARD = 100 ;
const integer IntlRuleBasedBreakIterator::LINE_HARD_LIMIT = 200 ;
const integer IntlRuleBasedBreakIterator::SENTENCE_TERM = 0 ;
const integer IntlRuleBasedBreakIterator::SENTENCE_TERM_LIMIT = 100 ;
const integer IntlRuleBasedBreakIterator::SENTENCE_SEP = 100 ;
const integer IntlRuleBasedBreakIterator::SENTENCE_SEP_LIMIT = 200 ;
/* Methods */
public __construct ( string $rules [, string $areCompiled ] )
public ReturnType getBinaryRules ( void )
public ReturnType getRules ( void )
public ReturnType getRuleStatus ( void )
public ReturnType getRuleStatusVec ( void )
/* Inherited methods */
private IntlBreakIterator::__construct ( void )
public static ReturnType IntlBreakIterator::createCharacterInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createCodePointInstance ( void )
public static ReturnType IntlBreakIterator::createLineInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createSentenceInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createTitleInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createWordInstance ([ string $"locale" ] )
public ReturnType IntlBreakIterator::current ( void )
public ReturnType IntlBreakIterator::first ( void )
public ReturnType IntlBreakIterator::following ( string $"offset" )
public ReturnType IntlBreakIterator::getErrorCode ( void )
ReturnType intl_get_error_code ( void )
public ReturnType IntlBreakIterator::getErrorMessage ( void )
ReturnType intl_get_error_message ( void )
public ReturnType IntlBreakIterator::getLocale ( string $"locale_type" )
public ReturnType IntlBreakIterator::getPartsIterator ([ string $"key_type" ] )
public ReturnType IntlBreakIterator::getText ( void )
public ReturnType IntlBreakIterator::isBoundary ( string $"offset" )
public ReturnType IntlBreakIterator::last ( void )
public ReturnType IntlBreakIterator::next ([ string $"offset" ] )
public ReturnType IntlBreakIterator::preceding ( string $"offset" )
public ReturnType IntlBreakIterator::previous ( void )
public ReturnType IntlBreakIterator::setText ( string $"text" )
}

Predefined Constants

IntlRuleBasedBreakIterator::DONE

IntlRuleBasedBreakIterator::WORD_NONE

IntlRuleBasedBreakIterator::WORD_NONE_LIMIT

IntlRuleBasedBreakIterator::WORD_NUMBER

IntlRuleBasedBreakIterator::WORD_NUMBER_LIMIT

IntlRuleBasedBreakIterator::WORD_LETTER

IntlRuleBasedBreakIterator::WORD_LETTER_LIMIT

IntlRuleBasedBreakIterator::WORD_KANA

IntlRuleBasedBreakIterator::WORD_KANA_LIMIT

IntlRuleBasedBreakIterator::WORD_IDEO

IntlRuleBasedBreakIterator::WORD_IDEO_LIMIT

IntlRuleBasedBreakIterator::LINE_SOFT

IntlRuleBasedBreakIterator::LINE_SOFT_LIMIT

IntlRuleBasedBreakIterator::LINE_HARD

IntlRuleBasedBreakIterator::LINE_HARD_LIMIT

IntlRuleBasedBreakIterator::SENTENCE_TERM

IntlRuleBasedBreakIterator::SENTENCE_TERM_LIMIT

IntlRuleBasedBreakIterator::SENTENCE_SEP

IntlRuleBasedBreakIterator::SENTENCE_SEP_LIMIT

The IntlCodePointBreakIterator class

Introduction

This break iterator identifies the boundaries between UTF-8 code points.

Class synopsis

IntlCodePointBreakIterator
class IntlCodePointBreakIterator extends IntlBreakIterator implements Traversable {
/* Constants */
const integer IntlCodePointBreakIterator::DONE = -1 ;
const integer IntlCodePointBreakIterator::WORD_NONE = 0 ;
const integer IntlCodePointBreakIterator::WORD_NONE_LIMIT = 100 ;
const integer IntlCodePointBreakIterator::WORD_NUMBER = 100 ;
const integer IntlCodePointBreakIterator::WORD_NUMBER_LIMIT = 200 ;
const integer IntlCodePointBreakIterator::WORD_LETTER = 200 ;
const integer IntlCodePointBreakIterator::WORD_LETTER_LIMIT = 300 ;
const integer IntlCodePointBreakIterator::WORD_KANA = 300 ;
const integer IntlCodePointBreakIterator::WORD_KANA_LIMIT = 400 ;
const integer IntlCodePointBreakIterator::WORD_IDEO = 400 ;
const integer IntlCodePointBreakIterator::WORD_IDEO_LIMIT = 500 ;
const integer IntlCodePointBreakIterator::LINE_SOFT = 0 ;
const integer IntlCodePointBreakIterator::LINE_SOFT_LIMIT = 100 ;
const integer IntlCodePointBreakIterator::LINE_HARD = 100 ;
const integer IntlCodePointBreakIterator::LINE_HARD_LIMIT = 200 ;
const integer IntlCodePointBreakIterator::SENTENCE_TERM = 0 ;
const integer IntlCodePointBreakIterator::SENTENCE_TERM_LIMIT = 100 ;
const integer IntlCodePointBreakIterator::SENTENCE_SEP = 100 ;
const integer IntlCodePointBreakIterator::SENTENCE_SEP_LIMIT = 200 ;
/* Methods */
public ReturnType getLastCodePoint ( void )
/* Inherited methods */
private IntlBreakIterator::__construct ( void )
public static ReturnType IntlBreakIterator::createCharacterInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createCodePointInstance ( void )
public static ReturnType IntlBreakIterator::createLineInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createSentenceInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createTitleInstance ([ string $"locale" ] )
public static ReturnType IntlBreakIterator::createWordInstance ([ string $"locale" ] )
public ReturnType IntlBreakIterator::current ( void )
public ReturnType IntlBreakIterator::first ( void )
public ReturnType IntlBreakIterator::following ( string $"offset" )
public ReturnType IntlBreakIterator::getErrorCode ( void )
ReturnType intl_get_error_code ( void )
public ReturnType IntlBreakIterator::getErrorMessage ( void )
ReturnType intl_get_error_message ( void )
public ReturnType IntlBreakIterator::getLocale ( string $"locale_type" )
public ReturnType IntlBreakIterator::getPartsIterator ([ string $"key_type" ] )
public ReturnType IntlBreakIterator::getText ( void )
public ReturnType IntlBreakIterator::isBoundary ( string $"offset" )
public ReturnType IntlBreakIterator::last ( void )
public ReturnType IntlBreakIterator::next ([ string $"offset" ] )
public ReturnType IntlBreakIterator::preceding ( string $"offset" )
public ReturnType IntlBreakIterator::previous ( void )
public ReturnType IntlBreakIterator::setText ( string $"text" )
}

Predefined Constants

IntlCodePointBreakIterator::DONE

IntlCodePointBreakIterator::WORD_NONE

IntlCodePointBreakIterator::WORD_NONE_LIMIT

IntlCodePointBreakIterator::WORD_NUMBER

IntlCodePointBreakIterator::WORD_NUMBER_LIMIT

IntlCodePointBreakIterator::WORD_LETTER

IntlCodePointBreakIterator::WORD_LETTER_LIMIT

IntlCodePointBreakIterator::WORD_KANA

IntlCodePointBreakIterator::WORD_KANA_LIMIT

IntlCodePointBreakIterator::WORD_IDEO

IntlCodePointBreakIterator::WORD_IDEO_LIMIT

IntlCodePointBreakIterator::LINE_SOFT

IntlCodePointBreakIterator::LINE_SOFT_LIMIT

IntlCodePointBreakIterator::LINE_HARD

IntlCodePointBreakIterator::LINE_HARD_LIMIT

IntlCodePointBreakIterator::SENTENCE_TERM

IntlCodePointBreakIterator::SENTENCE_TERM_LIMIT

IntlCodePointBreakIterator::SENTENCE_SEP

IntlCodePointBreakIterator::SENTENCE_SEP_LIMIT

The IntlPartsIterator class

Introduction

Objects of this class can be obtained from IntlBreakIterator objects. While the break iterators provide a sequence of boundary positions when iterated, IntlPartsIterator objects provide, as a convenience, the text fragments comprehended between two successive boundaries.

The keys may represent the offset of the left boundary, right boundary, or they may just the sequence of non-negative integers. See IntlBreakIterator::getPartsIterator.

Class synopsis

IntlPartsIterator
class IntlPartsIterator extends IntlIterator implements Iterator {
/* Constants */
const integer IntlPartsIterator::KEY_SEQUENTIAL = 0 ;
const integer IntlPartsIterator::KEY_LEFT = 1 ;
const integer IntlPartsIterator::KEY_RIGHT = 2 ;
/* Methods */
public ReturnType getBreakIterator ( void )
/* Inherited methods */
public ReturnType IntlIterator::current ( void )
public ReturnType IntlIterator::key ( void )
public ReturnType IntlIterator::next ( void )
public ReturnType IntlIterator::rewind ( void )
public ReturnType IntlIterator::valid ( void )
}

Predefined Constants

IntlPartsIterator::KEY_SEQUENTIAL

IntlPartsIterator::KEY_LEFT

IntlPartsIterator::KEY_RIGHT

The UConverter class

Introduction

Class synopsis

UConverter
class UConverter {
/* Constants */
const integer UConverter::REASON_UNASSIGNED = 0 ;
const integer UConverter::REASON_ILLEGAL = 1 ;
const integer UConverter::REASON_IRREGULAR = 2 ;
const integer UConverter::REASON_RESET = 3 ;
const integer UConverter::REASON_CLOSE = 4 ;
const integer UConverter::REASON_CLONE = 5 ;
const integer UConverter::UNSUPPORTED_CONVERTER = -1 ;
const integer UConverter::SBCS = 0 ;
const integer UConverter::DBCS = 1 ;
const integer UConverter::MBCS = 2 ;
const integer UConverter::LATIN_1 = 3 ;
const integer UConverter::UTF8 = 4 ;
const integer UConverter::UTF16_BigEndian = 5 ;
const integer UConverter::UTF16_LittleEndian = 6 ;
const integer UConverter::UTF32_BigEndian = 7 ;
const integer UConverter::UTF32_LittleEndian = 8 ;
const integer UConverter::EBCDIC_STATEFUL = 9 ;
const integer UConverter::ISO_2022 = 10 ;
const integer UConverter::LMBCS_1 = 11 ;
const integer UConverter::LMBCS_2 = 12 ;
const integer UConverter::LMBCS_3 = 13 ;
const integer UConverter::LMBCS_4 = 14 ;
const integer UConverter::LMBCS_5 = 15 ;
const integer UConverter::LMBCS_6 = 16 ;
const integer UConverter::LMBCS_8 = 17 ;
const integer UConverter::LMBCS_11 = 18 ;
const integer UConverter::LMBCS_16 = 19 ;
const integer UConverter::LMBCS_17 = 20 ;
const integer UConverter::LMBCS_18 = 21 ;
const integer UConverter::LMBCS_19 = 22 ;
const integer UConverter::LMBCS_LAST = 22 ;
const integer UConverter::HZ = 23 ;
const integer UConverter::SCSU = 24 ;
const integer UConverter::ISCII = 25 ;
const integer UConverter::US_ASCII = 26 ;
const integer UConverter::UTF7 = 27 ;
const integer UConverter::BOCU1 = 28 ;
const integer UConverter::UTF16 = 29 ;
const integer UConverter::UTF32 = 30 ;
const integer UConverter::CESU8 = 31 ;
const integer UConverter::IMAP_MAILBOX = 32 ;
/* Methods */
public __construct ([ string $destination_encoding [, string $source_encoding ]] )
public string convert ( string $str [, bool $reverse ] )
public mixed fromUCallback ( integer $reason , string $source , string $codePoint , integer &$error )
public static array getAliases ([ string $name ] )
public static array getAvailable ( void )
public string getDestinationEncoding ( void )
public integer getDestinationType ( void )
public integer getErrorCode ( void )
public string getErrorMessage ( void )
public string getSourceEncoding ( void )
public integer getSourceType ( void )
public static array getStandards ( void )
public string getSubstChars ( void )
public static string reasonText ([ integer $reason ] )
public void setDestinationEncoding ( string $encoding )
public void setSourceEncoding ( string $encoding )
public void setSubstChars ( string $chars )
public mixed toUCallback ( integer $reason , string $source , string $codeUnits , integer &$error )
public static string transcode ( string $str , string $toEncoding , string $fromEncoding [, array $options ] )
}

Predefined Constants

UConverter::REASON_UNASSIGNED

UConverter::REASON_ILLEGAL

UConverter::REASON_IRREGULAR

UConverter::REASON_RESET

UConverter::REASON_CLOSE

UConverter::REASON_CLONE

UConverter::UNSUPPORTED_CONVERTER

UConverter::SBCS

UConverter::DBCS

UConverter::MBCS

UConverter::LATIN_1

UConverter::UTF8

UConverter::UTF16_BigEndian

UConverter::UTF16_LittleEndian

UConverter::UTF32_BigEndian

UConverter::UTF32_LittleEndian

UConverter::EBCDIC_STATEFUL

UConverter::ISO_2022

UConverter::LMBCS_1

UConverter::LMBCS_2

UConverter::LMBCS_3

UConverter::LMBCS_4

UConverter::LMBCS_5

UConverter::LMBCS_6

UConverter::LMBCS_8

UConverter::LMBCS_11

UConverter::LMBCS_16

UConverter::LMBCS_17

UConverter::LMBCS_18

UConverter::LMBCS_19

UConverter::LMBCS_LAST

UConverter::HZ

UConverter::SCSU

UConverter::ISCII

UConverter::US_ASCII

UConverter::UTF7

UConverter::BOCU1

UConverter::UTF16

UConverter::UTF32

UConverter::CESU8

UConverter::IMAP_MAILBOX

IntlChar

Introduction

IntlChar provides access to a number of utility methods that can be used to access information about Unicode characters.

The methods and constants adhere closely to the names and behavior used by the underlying ICU library.

Class synopsis

IntlChar
class IntlChar {
/* Constants */
const string IntlChar::UNICODE_VERSION = 6.3 ;
const integer IntlChar::CODEPOINT_MIN = 0 ;
const integer IntlChar::CODEPOINT_MAX = 1114111 ;
const float IntlChar::NO_NUMERIC_VALUE = -123456789 ;
const integer IntlChar::PROPERTY_ALPHABETIC = 0 ;
const integer IntlChar::PROPERTY_BINARY_START = 0 ;
const integer IntlChar::PROPERTY_ASCII_HEX_DIGIT = 1 ;
const integer IntlChar::PROPERTY_BIDI_CONTROL = 2 ;
const integer IntlChar::PROPERTY_BIDI_MIRRORED = 3 ;
const integer IntlChar::PROPERTY_DASH = 4 ;
const integer IntlChar::PROPERTY_DEFAULT_IGNORABLE_CODE_POINT = 5 ;
const integer IntlChar::PROPERTY_DEPRECATED = 6 ;
const integer IntlChar::PROPERTY_DIACRITIC = 7 ;
const integer IntlChar::PROPERTY_EXTENDER = 8 ;
const integer IntlChar::PROPERTY_FULL_COMPOSITION_EXCLUSION = 9 ;
const integer IntlChar::PROPERTY_GRAPHEME_BASE = 10 ;
const integer IntlChar::PROPERTY_GRAPHEME_EXTEND = 11 ;
const integer IntlChar::PROPERTY_GRAPHEME_LINK = 12 ;
const integer IntlChar::PROPERTY_HEX_DIGIT = 13 ;
const integer IntlChar::PROPERTY_HYPHEN = 14 ;
const integer IntlChar::PROPERTY_ID_CONTINUE = 15 ;
const integer IntlChar::PROPERTY_ID_START = 16 ;
const integer IntlChar::PROPERTY_IDEOGRAPHIC = 17 ;
const integer IntlChar::PROPERTY_IDS_BINARY_OPERATOR = 18 ;
const integer IntlChar::PROPERTY_IDS_TRINARY_OPERATOR = 19 ;
const integer IntlChar::PROPERTY_JOIN_CONTROL = 20 ;
const integer IntlChar::PROPERTY_LOGICAL_ORDER_EXCEPTION = 21 ;
const integer IntlChar::PROPERTY_LOWERCASE = 22 ;
const integer IntlChar::PROPERTY_MATH = 23 ;
const integer IntlChar::PROPERTY_NONCHARACTER_CODE_POINT = 24 ;
const integer IntlChar::PROPERTY_QUOTATION_MARK = 25 ;
const integer IntlChar::PROPERTY_RADICAL = 26 ;
const integer IntlChar::PROPERTY_SOFT_DOTTED = 27 ;
const integer IntlChar::PROPERTY_TERMINAL_PUNCTUATION = 28 ;
const integer IntlChar::PROPERTY_UNIFIED_IDEOGRAPH = 29 ;
const integer IntlChar::PROPERTY_UPPERCASE = 30 ;
const integer IntlChar::PROPERTY_WHITE_SPACE = 31 ;
const integer IntlChar::PROPERTY_XID_CONTINUE = 32 ;
const integer IntlChar::PROPERTY_XID_START = 33 ;
const integer IntlChar::PROPERTY_CASE_SENSITIVE = 34 ;
const integer IntlChar::PROPERTY_S_TERM = 35 ;
const integer IntlChar::PROPERTY_VARIATION_SELECTOR = 36 ;
const integer IntlChar::PROPERTY_NFD_INERT = 37 ;
const integer IntlChar::PROPERTY_NFKD_INERT = 38 ;
const integer IntlChar::PROPERTY_NFC_INERT = 39 ;
const integer IntlChar::PROPERTY_NFKC_INERT = 40 ;
const integer IntlChar::PROPERTY_SEGMENT_STARTER = 41 ;
const integer IntlChar::PROPERTY_PATTERN_SYNTAX = 42 ;
const integer IntlChar::PROPERTY_PATTERN_WHITE_SPACE = 43 ;
const integer IntlChar::PROPERTY_POSIX_ALNUM = 44 ;
const integer IntlChar::PROPERTY_POSIX_BLANK = 45 ;
const integer IntlChar::PROPERTY_POSIX_GRAPH = 46 ;
const integer IntlChar::PROPERTY_POSIX_PRINT = 47 ;
const integer IntlChar::PROPERTY_POSIX_XDIGIT = 48 ;
const integer IntlChar::PROPERTY_CASED = 49 ;
const integer IntlChar::PROPERTY_CASE_IGNORABLE = 50 ;
const integer IntlChar::PROPERTY_CHANGES_WHEN_LOWERCASED = 51 ;
const integer IntlChar::PROPERTY_CHANGES_WHEN_UPPERCASED = 52 ;
const integer IntlChar::PROPERTY_CHANGES_WHEN_TITLECASED = 53 ;
const integer IntlChar::PROPERTY_CHANGES_WHEN_CASEFOLDED = 54 ;
const integer IntlChar::PROPERTY_CHANGES_WHEN_CASEMAPPED = 55 ;
const integer IntlChar::PROPERTY_CHANGES_WHEN_NFKC_CASEFOLDED = 56 ;
const integer IntlChar::PROPERTY_BINARY_LIMIT = 57 ;
const integer IntlChar::PROPERTY_BIDI_CLASS = 4096 ;
const integer IntlChar::PROPERTY_INT_START = 4096 ;
const integer IntlChar::PROPERTY_BLOCK = 4097 ;
const integer IntlChar::PROPERTY_CANONICAL_COMBINING_CLASS = 4098 ;
const integer IntlChar::PROPERTY_DECOMPOSITION_TYPE = 4099 ;
const integer IntlChar::PROPERTY_EAST_ASIAN_WIDTH = 4100 ;
const integer IntlChar::PROPERTY_GENERAL_CATEGORY = 4101 ;
const integer IntlChar::PROPERTY_JOINING_GROUP = 4102 ;
const integer IntlChar::PROPERTY_JOINING_TYPE = 4103 ;
const integer IntlChar::PROPERTY_LINE_BREAK = 4104 ;
const integer IntlChar::PROPERTY_NUMERIC_TYPE = 4105 ;
const integer IntlChar::PROPERTY_SCRIPT = 4106 ;
const integer IntlChar::PROPERTY_HANGUL_SYLLABLE_TYPE = 4107 ;
const integer IntlChar::PROPERTY_NFD_QUICK_CHECK = 4108 ;
const integer IntlChar::PROPERTY_NFKD_QUICK_CHECK = 4109 ;
const integer IntlChar::PROPERTY_NFC_QUICK_CHECK = 4110 ;
const integer IntlChar::PROPERTY_NFKC_QUICK_CHECK = 4111 ;
const integer IntlChar::PROPERTY_LEAD_CANONICAL_COMBINING_CLASS = 4112 ;
const integer IntlChar::PROPERTY_TRAIL_CANONICAL_COMBINING_CLASS = 4113 ;
const integer IntlChar::PROPERTY_GRAPHEME_CLUSTER_BREAK = 4114 ;
const integer IntlChar::PROPERTY_SENTENCE_BREAK = 4115 ;
const integer IntlChar::PROPERTY_WORD_BREAK = 4116 ;
const integer IntlChar::PROPERTY_BIDI_PAIRED_BRACKET_TYPE = 4117 ;
const integer IntlChar::PROPERTY_INT_LIMIT = 4118 ;
const integer IntlChar::PROPERTY_GENERAL_CATEGORY_MASK = 8192 ;
const integer IntlChar::PROPERTY_MASK_START = 8192 ;
const integer IntlChar::PROPERTY_MASK_LIMIT = 8193 ;
const integer IntlChar::PROPERTY_NUMERIC_VALUE = 12288 ;
const integer IntlChar::PROPERTY_DOUBLE_START = 12288 ;
const integer IntlChar::PROPERTY_DOUBLE_LIMIT = 12289 ;
const integer IntlChar::PROPERTY_AGE = 16384 ;
const integer IntlChar::PROPERTY_STRING_START = 16384 ;
const integer IntlChar::PROPERTY_BIDI_MIRRORING_GLYPH = 16385 ;
const integer IntlChar::PROPERTY_CASE_FOLDING = 16386 ;
const integer IntlChar::PROPERTY_ISO_COMMENT = 16387 ;
const integer IntlChar::PROPERTY_LOWERCASE_MAPPING = 16388 ;
const integer IntlChar::PROPERTY_NAME = 16389 ;
const integer IntlChar::PROPERTY_SIMPLE_CASE_FOLDING = 16390 ;
const integer IntlChar::PROPERTY_SIMPLE_LOWERCASE_MAPPING = 16391 ;
const integer IntlChar::PROPERTY_SIMPLE_TITLECASE_MAPPING = 16392 ;
const integer IntlChar::PROPERTY_SIMPLE_UPPERCASE_MAPPING = 16393 ;
const integer IntlChar::PROPERTY_TITLECASE_MAPPING = 16394 ;
const integer IntlChar::PROPERTY_UNICODE_1_NAME = 16395 ;
const integer IntlChar::PROPERTY_UPPERCASE_MAPPING = 16396 ;
const integer IntlChar::PROPERTY_BIDI_PAIRED_BRACKET = 16397 ;
const integer IntlChar::PROPERTY_STRING_LIMIT = 16398 ;
const integer IntlChar::PROPERTY_SCRIPT_EXTENSIONS = 28672 ;
const integer IntlChar::PROPERTY_OTHER_PROPERTY_START = 28672 ;
const integer IntlChar::PROPERTY_OTHER_PROPERTY_LIMIT = 28673 ;
const integer IntlChar::PROPERTY_INVALID_CODE = -1 ;
const integer IntlChar::CHAR_CATEGORY_UNASSIGNED = 0 ;
const integer IntlChar::CHAR_CATEGORY_GENERAL_OTHER_TYPES = 0 ;
const integer IntlChar::CHAR_CATEGORY_UPPERCASE_LETTER = 1 ;
const integer IntlChar::CHAR_CATEGORY_LOWERCASE_LETTER = 2 ;
const integer IntlChar::CHAR_CATEGORY_TITLECASE_LETTER = 3 ;
const integer IntlChar::CHAR_CATEGORY_MODIFIER_LETTER = 4 ;
const integer IntlChar::CHAR_CATEGORY_OTHER_LETTER = 5 ;
const integer IntlChar::CHAR_CATEGORY_NON_SPACING_MARK = 6 ;
const integer IntlChar::CHAR_CATEGORY_ENCLOSING_MARK = 7 ;
const integer IntlChar::CHAR_CATEGORY_COMBINING_SPACING_MARK = 8 ;
const integer IntlChar::CHAR_CATEGORY_DECIMAL_DIGIT_NUMBER = 9 ;
const integer IntlChar::CHAR_CATEGORY_LETTER_NUMBER = 10 ;
const integer IntlChar::CHAR_CATEGORY_OTHER_NUMBER = 11 ;
const integer IntlChar::CHAR_CATEGORY_SPACE_SEPARATOR = 12 ;
const integer IntlChar::CHAR_CATEGORY_LINE_SEPARATOR = 13 ;
const integer IntlChar::CHAR_CATEGORY_PARAGRAPH_SEPARATOR = 14 ;
const integer IntlChar::CHAR_CATEGORY_CONTROL_CHAR = 15 ;
const integer IntlChar::CHAR_CATEGORY_FORMAT_CHAR = 16 ;
const integer IntlChar::CHAR_CATEGORY_PRIVATE_USE_CHAR = 17 ;
const integer IntlChar::CHAR_CATEGORY_SURROGATE = 18 ;
const integer IntlChar::CHAR_CATEGORY_DASH_PUNCTUATION = 19 ;
const integer IntlChar::CHAR_CATEGORY_START_PUNCTUATION = 20 ;
const integer IntlChar::CHAR_CATEGORY_END_PUNCTUATION = 21 ;
const integer IntlChar::CHAR_CATEGORY_CONNECTOR_PUNCTUATION = 22 ;
const integer IntlChar::CHAR_CATEGORY_OTHER_PUNCTUATION = 23 ;
const integer IntlChar::CHAR_CATEGORY_MATH_SYMBOL = 24 ;
const integer IntlChar::CHAR_CATEGORY_CURRENCY_SYMBOL = 25 ;
const integer IntlChar::CHAR_CATEGORY_MODIFIER_SYMBOL = 26 ;
const integer IntlChar::CHAR_CATEGORY_OTHER_SYMBOL = 27 ;
const integer IntlChar::CHAR_CATEGORY_INITIAL_PUNCTUATION = 28 ;
const integer IntlChar::CHAR_CATEGORY_FINAL_PUNCTUATION = 29 ;
const integer IntlChar::CHAR_CATEGORY_CHAR_CATEGORY_COUNT = 30 ;
const integer IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT = 0 ;
const integer IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT = 1 ;
const integer IntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER = 2 ;
const integer IntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER_SEPARATOR = 3 ;
const integer IntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER_TERMINATOR = 4 ;
const integer IntlChar::CHAR_DIRECTION_ARABIC_NUMBER = 5 ;
const integer IntlChar::CHAR_DIRECTION_COMMON_NUMBER_SEPARATOR = 6 ;
const integer IntlChar::CHAR_DIRECTION_BLOCK_SEPARATOR = 7 ;
const integer IntlChar::CHAR_DIRECTION_SEGMENT_SEPARATOR = 8 ;
const integer IntlChar::CHAR_DIRECTION_WHITE_SPACE_NEUTRAL = 9 ;
const integer IntlChar::CHAR_DIRECTION_OTHER_NEUTRAL = 10 ;
const integer IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_EMBEDDING = 11 ;
const integer IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_OVERRIDE = 12 ;
const integer IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_ARABIC = 13 ;
const integer IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_EMBEDDING = 14 ;
const integer IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_OVERRIDE = 15 ;
const integer IntlChar::CHAR_DIRECTION_POP_DIRECTIONAL_FORMAT = 16 ;
const integer IntlChar::CHAR_DIRECTION_DIR_NON_SPACING_MARK = 17 ;
const integer IntlChar::CHAR_DIRECTION_BOUNDARY_NEUTRAL = 18 ;
const integer IntlChar::CHAR_DIRECTION_FIRST_STRONG_ISOLATE = 19 ;
const integer IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_ISOLATE = 20 ;
const integer IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_ISOLATE = 21 ;
const integer IntlChar::CHAR_DIRECTION_POP_DIRECTIONAL_ISOLATE = 22 ;
const integer IntlChar::CHAR_DIRECTION_CHAR_DIRECTION_COUNT = 23 ;
const integer IntlChar::BLOCK_CODE_NO_BLOCK = 0 ;
const integer IntlChar::BLOCK_CODE_BASIC_LATIN = 1 ;
const integer IntlChar::BLOCK_CODE_LATIN_1_SUPPLEMENT = 2 ;
const integer IntlChar::BLOCK_CODE_LATIN_EXTENDED_A = 3 ;
const integer IntlChar::BLOCK_CODE_LATIN_EXTENDED_B = 4 ;
const integer IntlChar::BLOCK_CODE_IPA_EXTENSIONS = 5 ;
const integer IntlChar::BLOCK_CODE_SPACING_MODIFIER_LETTERS = 6 ;
const integer IntlChar::BLOCK_CODE_COMBINING_DIACRITICAL_MARKS = 7 ;
const integer IntlChar::BLOCK_CODE_GREEK = 8 ;
const integer IntlChar::BLOCK_CODE_CYRILLIC = 9 ;
const integer IntlChar::BLOCK_CODE_ARMENIAN = 10 ;
const integer IntlChar::BLOCK_CODE_HEBREW = 11 ;
const integer IntlChar::BLOCK_CODE_ARABIC = 12 ;
const integer IntlChar::BLOCK_CODE_SYRIAC = 13 ;
const integer IntlChar::BLOCK_CODE_THAANA = 14 ;
const integer IntlChar::BLOCK_CODE_DEVANAGARI = 15 ;
const integer IntlChar::BLOCK_CODE_BENGALI = 16 ;
const integer IntlChar::BLOCK_CODE_GURMUKHI = 17 ;
const integer IntlChar::BLOCK_CODE_GUJARATI = 18 ;
const integer IntlChar::BLOCK_CODE_ORIYA = 19 ;
const integer IntlChar::BLOCK_CODE_TAMIL = 20 ;
const integer IntlChar::BLOCK_CODE_TELUGU = 21 ;
const integer IntlChar::BLOCK_CODE_KANNADA = 22 ;
const integer IntlChar::BLOCK_CODE_MALAYALAM = 23 ;
const integer IntlChar::BLOCK_CODE_SINHALA = 24 ;
const integer IntlChar::BLOCK_CODE_THAI = 25 ;
const integer IntlChar::BLOCK_CODE_LAO = 26 ;
const integer IntlChar::BLOCK_CODE_TIBETAN = 27 ;
const integer IntlChar::BLOCK_CODE_MYANMAR = 28 ;
const integer IntlChar::BLOCK_CODE_GEORGIAN = 29 ;
const integer IntlChar::BLOCK_CODE_HANGUL_JAMO = 30 ;
const integer IntlChar::BLOCK_CODE_ETHIOPIC = 31 ;
const integer IntlChar::BLOCK_CODE_CHEROKEE = 32 ;
const integer IntlChar::BLOCK_CODE_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS = 33 ;
const integer IntlChar::BLOCK_CODE_OGHAM = 34 ;
const integer IntlChar::BLOCK_CODE_RUNIC = 35 ;
const integer IntlChar::BLOCK_CODE_KHMER = 36 ;
const integer IntlChar::BLOCK_CODE_MONGOLIAN = 37 ;
const integer IntlChar::BLOCK_CODE_LATIN_EXTENDED_ADDITIONAL = 38 ;
const integer IntlChar::BLOCK_CODE_GREEK_EXTENDED = 39 ;
const integer IntlChar::BLOCK_CODE_GENERAL_PUNCTUATION = 40 ;
const integer IntlChar::BLOCK_CODE_SUPERSCRIPTS_AND_SUBSCRIPTS = 41 ;
const integer IntlChar::BLOCK_CODE_CURRENCY_SYMBOLS = 42 ;
const integer IntlChar::BLOCK_CODE_COMBINING_MARKS_FOR_SYMBOLS = 43 ;
const integer IntlChar::BLOCK_CODE_LETTERLIKE_SYMBOLS = 44 ;
const integer IntlChar::BLOCK_CODE_NUMBER_FORMS = 45 ;
const integer IntlChar::BLOCK_CODE_ARROWS = 46 ;
const integer IntlChar::BLOCK_CODE_MATHEMATICAL_OPERATORS = 47 ;
const integer IntlChar::BLOCK_CODE_MISCELLANEOUS_TECHNICAL = 48 ;
const integer IntlChar::BLOCK_CODE_CONTROL_PICTURES = 49 ;
const integer IntlChar::BLOCK_CODE_OPTICAL_CHARACTER_RECOGNITION = 50 ;
const integer IntlChar::BLOCK_CODE_ENCLOSED_ALPHANUMERICS = 51 ;
const integer IntlChar::BLOCK_CODE_BOX_DRAWING = 52 ;
const integer IntlChar::BLOCK_CODE_BLOCK_ELEMENTS = 53 ;
const integer IntlChar::BLOCK_CODE_GEOMETRIC_SHAPES = 54 ;
const integer IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS = 55 ;
const integer IntlChar::BLOCK_CODE_DINGBATS = 56 ;
const integer IntlChar::BLOCK_CODE_BRAILLE_PATTERNS = 57 ;
const integer IntlChar::BLOCK_CODE_CJK_RADICALS_SUPPLEMENT = 58 ;
const integer IntlChar::BLOCK_CODE_KANGXI_RADICALS = 59 ;
const integer IntlChar::BLOCK_CODE_IDEOGRAPHIC_DESCRIPTION_CHARACTERS = 60 ;
const integer IntlChar::BLOCK_CODE_CJK_SYMBOLS_AND_PUNCTUATION = 61 ;
const integer IntlChar::BLOCK_CODE_HIRAGANA = 62 ;
const integer IntlChar::BLOCK_CODE_KATAKANA = 63 ;
const integer IntlChar::BLOCK_CODE_BOPOMOFO = 64 ;
const integer IntlChar::BLOCK_CODE_HANGUL_COMPATIBILITY_JAMO = 65 ;
const integer IntlChar::BLOCK_CODE_KANBUN = 66 ;
const integer IntlChar::BLOCK_CODE_BOPOMOFO_EXTENDED = 67 ;
const integer IntlChar::BLOCK_CODE_ENCLOSED_CJK_LETTERS_AND_MONTHS = 68 ;
const integer IntlChar::BLOCK_CODE_CJK_COMPATIBILITY = 69 ;
const integer IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A = 70 ;
const integer IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS = 71 ;
const integer IntlChar::BLOCK_CODE_YI_SYLLABLES = 72 ;
const integer IntlChar::BLOCK_CODE_YI_RADICALS = 73 ;
const integer IntlChar::BLOCK_CODE_HANGUL_SYLLABLES = 74 ;
const integer IntlChar::BLOCK_CODE_HIGH_SURROGATES = 75 ;
const integer IntlChar::BLOCK_CODE_HIGH_PRIVATE_USE_SURROGATES = 76 ;
const integer IntlChar::BLOCK_CODE_LOW_SURROGATES = 77 ;
const integer IntlChar::BLOCK_CODE_PRIVATE_USE_AREA = 78 ;
const integer IntlChar::BLOCK_CODE_PRIVATE_USE = 78 ;
const integer IntlChar::BLOCK_CODE_CJK_COMPATIBILITY_IDEOGRAPHS = 79 ;
const integer IntlChar::BLOCK_CODE_ALPHABETIC_PRESENTATION_FORMS = 80 ;
const integer IntlChar::BLOCK_CODE_ARABIC_PRESENTATION_FORMS_A = 81 ;
const integer IntlChar::BLOCK_CODE_COMBINING_HALF_MARKS = 82 ;
const integer IntlChar::BLOCK_CODE_CJK_COMPATIBILITY_FORMS = 83 ;
const integer IntlChar::BLOCK_CODE_SMALL_FORM_VARIANTS = 84 ;
const integer IntlChar::BLOCK_CODE_ARABIC_PRESENTATION_FORMS_B = 85 ;
const integer IntlChar::BLOCK_CODE_SPECIALS = 86 ;
const integer IntlChar::BLOCK_CODE_HALFWIDTH_AND_FULLWIDTH_FORMS = 87 ;
const integer IntlChar::BLOCK_CODE_OLD_ITALIC = 88 ;
const integer IntlChar::BLOCK_CODE_GOTHIC = 89 ;
const integer IntlChar::BLOCK_CODE_DESERET = 90 ;
const integer IntlChar::BLOCK_CODE_BYZANTINE_MUSICAL_SYMBOLS = 91 ;
const integer IntlChar::BLOCK_CODE_MUSICAL_SYMBOLS = 92 ;
const integer IntlChar::BLOCK_CODE_MATHEMATICAL_ALPHANUMERIC_SYMBOLS = 93 ;
const integer IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B = 94 ;
const integer IntlChar::BLOCK_CODE_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT = 95 ;
const integer IntlChar::BLOCK_CODE_TAGS = 96 ;
const integer IntlChar::BLOCK_CODE_CYRILLIC_SUPPLEMENT = 97 ;
const integer IntlChar::BLOCK_CODE_CYRILLIC_SUPPLEMENTARY = 97 ;
const integer IntlChar::BLOCK_CODE_TAGALOG = 98 ;
const integer IntlChar::BLOCK_CODE_HANUNOO = 99 ;
const integer IntlChar::BLOCK_CODE_BUHID = 100 ;
const integer IntlChar::BLOCK_CODE_TAGBANWA = 101 ;
const integer IntlChar::BLOCK_CODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A = 102 ;
const integer IntlChar::BLOCK_CODE_SUPPLEMENTAL_ARROWS_A = 103 ;
const integer IntlChar::BLOCK_CODE_SUPPLEMENTAL_ARROWS_B = 104 ;
const integer IntlChar::BLOCK_CODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B = 105 ;
const integer IntlChar::BLOCK_CODE_SUPPLEMENTAL_MATHEMATICAL_OPERATORS = 106 ;
const integer IntlChar::BLOCK_CODE_KATAKANA_PHONETIC_EXTENSIONS = 107 ;
const integer IntlChar::BLOCK_CODE_VARIATION_SELECTORS = 108 ;
const integer IntlChar::BLOCK_CODE_SUPPLEMENTARY_PRIVATE_USE_AREA_A = 109 ;
const integer IntlChar::BLOCK_CODE_SUPPLEMENTARY_PRIVATE_USE_AREA_B = 110 ;
const integer IntlChar::BLOCK_CODE_LIMBU = 111 ;
const integer IntlChar::BLOCK_CODE_TAI_LE = 112 ;
const integer IntlChar::BLOCK_CODE_KHMER_SYMBOLS = 113 ;
const integer IntlChar::BLOCK_CODE_PHONETIC_EXTENSIONS = 114 ;
const integer IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS_AND_ARROWS = 115 ;
const integer IntlChar::BLOCK_CODE_YIJING_HEXAGRAM_SYMBOLS = 116 ;
const integer IntlChar::BLOCK_CODE_LINEAR_B_SYLLABARY = 117 ;
const integer IntlChar::BLOCK_CODE_LINEAR_B_IDEOGRAMS = 118 ;
const integer IntlChar::BLOCK_CODE_AEGEAN_NUMBERS = 119 ;
const integer IntlChar::BLOCK_CODE_UGARITIC = 120 ;
const integer IntlChar::BLOCK_CODE_SHAVIAN = 121 ;
const integer IntlChar::BLOCK_CODE_OSMANYA = 122 ;
const integer IntlChar::BLOCK_CODE_CYPRIOT_SYLLABARY = 123 ;
const integer IntlChar::BLOCK_CODE_TAI_XUAN_JING_SYMBOLS = 124 ;
const integer IntlChar::BLOCK_CODE_VARIATION_SELECTORS_SUPPLEMENT = 125 ;
const integer IntlChar::BLOCK_CODE_ANCIENT_GREEK_MUSICAL_NOTATION = 126 ;
const integer IntlChar::BLOCK_CODE_ANCIENT_GREEK_NUMBERS = 127 ;
const integer IntlChar::BLOCK_CODE_ARABIC_SUPPLEMENT = 128 ;
const integer IntlChar::BLOCK_CODE_BUGINESE = 129 ;
const integer IntlChar::BLOCK_CODE_CJK_STROKES = 130 ;
const integer IntlChar::BLOCK_CODE_COMBINING_DIACRITICAL_MARKS_SUPPLEMENT = 131 ;
const integer IntlChar::BLOCK_CODE_COPTIC = 132 ;
const integer IntlChar::BLOCK_CODE_ETHIOPIC_EXTENDED = 133 ;
const integer IntlChar::BLOCK_CODE_ETHIOPIC_SUPPLEMENT = 134 ;
const integer IntlChar::BLOCK_CODE_GEORGIAN_SUPPLEMENT = 135 ;
const integer IntlChar::BLOCK_CODE_GLAGOLITIC = 136 ;
const integer IntlChar::BLOCK_CODE_KHAROSHTHI = 137 ;
const integer IntlChar::BLOCK_CODE_MODIFIER_TONE_LETTERS = 138 ;
const integer IntlChar::BLOCK_CODE_NEW_TAI_LUE = 139 ;
const integer IntlChar::BLOCK_CODE_OLD_PERSIAN = 140 ;
const integer IntlChar::BLOCK_CODE_PHONETIC_EXTENSIONS_SUPPLEMENT = 141 ;
const integer IntlChar::BLOCK_CODE_SUPPLEMENTAL_PUNCTUATION = 142 ;
const integer IntlChar::BLOCK_CODE_SYLOTI_NAGRI = 143 ;
const integer IntlChar::BLOCK_CODE_TIFINAGH = 144 ;
const integer IntlChar::BLOCK_CODE_VERTICAL_FORMS = 145 ;
const integer IntlChar::BLOCK_CODE_NKO = 146 ;
const integer IntlChar::BLOCK_CODE_BALINESE = 147 ;
const integer IntlChar::BLOCK_CODE_LATIN_EXTENDED_C = 148 ;
const integer IntlChar::BLOCK_CODE_LATIN_EXTENDED_D = 149 ;
const integer IntlChar::BLOCK_CODE_PHAGS_PA = 150 ;
const integer IntlChar::BLOCK_CODE_PHOENICIAN = 151 ;
const integer IntlChar::BLOCK_CODE_CUNEIFORM = 152 ;
const integer IntlChar::BLOCK_CODE_CUNEIFORM_NUMBERS_AND_PUNCTUATION = 153 ;
const integer IntlChar::BLOCK_CODE_COUNTING_ROD_NUMERALS = 154 ;
const integer IntlChar::BLOCK_CODE_SUNDANESE = 155 ;
const integer IntlChar::BLOCK_CODE_LEPCHA = 156 ;
const integer IntlChar::BLOCK_CODE_OL_CHIKI = 157 ;
const integer IntlChar::BLOCK_CODE_CYRILLIC_EXTENDED_A = 158 ;
const integer IntlChar::BLOCK_CODE_VAI = 159 ;
const integer IntlChar::BLOCK_CODE_CYRILLIC_EXTENDED_B = 160 ;
const integer IntlChar::BLOCK_CODE_SAURASHTRA = 161 ;
const integer IntlChar::BLOCK_CODE_KAYAH_LI = 162 ;
const integer IntlChar::BLOCK_CODE_REJANG = 163 ;
const integer IntlChar::BLOCK_CODE_CHAM = 164 ;
const integer IntlChar::BLOCK_CODE_ANCIENT_SYMBOLS = 165 ;
const integer IntlChar::BLOCK_CODE_PHAISTOS_DISC = 166 ;
const integer IntlChar::BLOCK_CODE_LYCIAN = 167 ;
const integer IntlChar::BLOCK_CODE_CARIAN = 168 ;
const integer IntlChar::BLOCK_CODE_LYDIAN = 169 ;
const integer IntlChar::BLOCK_CODE_MAHJONG_TILES = 170 ;
const integer IntlChar::BLOCK_CODE_DOMINO_TILES = 171 ;
const integer IntlChar::BLOCK_CODE_SAMARITAN = 172 ;
const integer IntlChar::BLOCK_CODE_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED = 173 ;
const integer IntlChar::BLOCK_CODE_TAI_THAM = 174 ;
const integer IntlChar::BLOCK_CODE_VEDIC_EXTENSIONS = 175 ;
const integer IntlChar::BLOCK_CODE_LISU = 176 ;
const integer IntlChar::BLOCK_CODE_BAMUM = 177 ;
const integer IntlChar::BLOCK_CODE_COMMON_INDIC_NUMBER_FORMS = 178 ;
const integer IntlChar::BLOCK_CODE_DEVANAGARI_EXTENDED = 179 ;
const integer IntlChar::BLOCK_CODE_HANGUL_JAMO_EXTENDED_A = 180 ;
const integer IntlChar::BLOCK_CODE_JAVANESE = 181 ;
const integer IntlChar::BLOCK_CODE_MYANMAR_EXTENDED_A = 182 ;
const integer IntlChar::BLOCK_CODE_TAI_VIET = 183 ;
const integer IntlChar::BLOCK_CODE_MEETEI_MAYEK = 184 ;
const integer IntlChar::BLOCK_CODE_HANGUL_JAMO_EXTENDED_B = 185 ;
const integer IntlChar::BLOCK_CODE_IMPERIAL_ARAMAIC = 186 ;
const integer IntlChar::BLOCK_CODE_OLD_SOUTH_ARABIAN = 187 ;
const integer IntlChar::BLOCK_CODE_AVESTAN = 188 ;
const integer IntlChar::BLOCK_CODE_INSCRIPTIONAL_PARTHIAN = 189 ;
const integer IntlChar::BLOCK_CODE_INSCRIPTIONAL_PAHLAVI = 190 ;
const integer IntlChar::BLOCK_CODE_OLD_TURKIC = 191 ;
const integer IntlChar::BLOCK_CODE_RUMI_NUMERAL_SYMBOLS = 192 ;
const integer IntlChar::BLOCK_CODE_KAITHI = 193 ;
const integer IntlChar::BLOCK_CODE_EGYPTIAN_HIEROGLYPHS = 194 ;
const integer IntlChar::BLOCK_CODE_ENCLOSED_ALPHANUMERIC_SUPPLEMENT = 195 ;
const integer IntlChar::BLOCK_CODE_ENCLOSED_IDEOGRAPHIC_SUPPLEMENT = 196 ;
const integer IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C = 197 ;
const integer IntlChar::BLOCK_CODE_MANDAIC = 198 ;
const integer IntlChar::BLOCK_CODE_BATAK = 199 ;
const integer IntlChar::BLOCK_CODE_ETHIOPIC_EXTENDED_A = 200 ;
const integer IntlChar::BLOCK_CODE_BRAHMI = 201 ;
const integer IntlChar::BLOCK_CODE_BAMUM_SUPPLEMENT = 202 ;
const integer IntlChar::BLOCK_CODE_KANA_SUPPLEMENT = 203 ;
const integer IntlChar::BLOCK_CODE_PLAYING_CARDS = 204 ;
const integer IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS = 205 ;
const integer IntlChar::BLOCK_CODE_EMOTICONS = 206 ;
const integer IntlChar::BLOCK_CODE_TRANSPORT_AND_MAP_SYMBOLS = 207 ;
const integer IntlChar::BLOCK_CODE_ALCHEMICAL_SYMBOLS = 208 ;
const integer IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D = 209 ;
const integer IntlChar::BLOCK_CODE_ARABIC_EXTENDED_A = 210 ;
const integer IntlChar::BLOCK_CODE_ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS = 211 ;
const integer IntlChar::BLOCK_CODE_CHAKMA = 212 ;
const integer IntlChar::BLOCK_CODE_MEETEI_MAYEK_EXTENSIONS = 213 ;
const integer IntlChar::BLOCK_CODE_MEROITIC_CURSIVE = 214 ;
const integer IntlChar::BLOCK_CODE_MEROITIC_HIEROGLYPHS = 215 ;
const integer IntlChar::BLOCK_CODE_MIAO = 216 ;
const integer IntlChar::BLOCK_CODE_SHARADA = 217 ;
const integer IntlChar::BLOCK_CODE_SORA_SOMPENG = 218 ;
const integer IntlChar::BLOCK_CODE_SUNDANESE_SUPPLEMENT = 219 ;
const integer IntlChar::BLOCK_CODE_TAKRI = 220 ;
const integer IntlChar::BLOCK_CODE_COUNT = 221 ;
const integer IntlChar::BLOCK_CODE_INVALID_CODE = -1 ;
const integer IntlChar::BPT_NONE = 0 ;
const integer IntlChar::BPT_OPEN = 1 ;
const integer IntlChar::BPT_CLOSE = 2 ;
const integer IntlChar::BPT_COUNT = 3 ;
const integer IntlChar::EA_NEUTRAL = 0 ;
const integer IntlChar::EA_AMBIGUOUS = 1 ;
const integer IntlChar::EA_HALFWIDTH = 2 ;
const integer IntlChar::EA_FULLWIDTH = 3 ;
const integer IntlChar::EA_NARROW = 4 ;
const integer IntlChar::EA_WIDE = 5 ;
const integer IntlChar::EA_COUNT = 6 ;
const integer IntlChar::UNICODE_CHAR_NAME = 0 ;
const integer IntlChar::UNICODE_10_CHAR_NAME = 1 ;
const integer IntlChar::EXTENDED_CHAR_NAME = 2 ;
const integer IntlChar::CHAR_NAME_ALIAS = 3 ;
const integer IntlChar::CHAR_NAME_CHOICE_COUNT = 4 ;
const integer IntlChar::SHORT_PROPERTY_NAME = 0 ;
const integer IntlChar::LONG_PROPERTY_NAME = 1 ;
const integer IntlChar::PROPERTY_NAME_CHOICE_COUNT = 2 ;
const integer IntlChar::DT_NONE = 0 ;
const integer IntlChar::DT_CANONICAL = 1 ;
const integer IntlChar::DT_COMPAT = 2 ;
const integer IntlChar::DT_CIRCLE = 3 ;
const integer IntlChar::DT_FINAL = 4 ;
const integer IntlChar::DT_FONT = 5 ;
const integer IntlChar::DT_FRACTION = 6 ;
const integer IntlChar::DT_INITIAL = 7 ;
const integer IntlChar::DT_ISOLATED = 8 ;
const integer IntlChar::DT_MEDIAL = 9 ;
const integer IntlChar::DT_NARROW = 10 ;
const integer IntlChar::DT_NOBREAK = 11 ;
const integer IntlChar::DT_SMALL = 12 ;
const integer IntlChar::DT_SQUARE = 13 ;
const integer IntlChar::DT_SUB = 14 ;
const integer IntlChar::DT_SUPER = 15 ;
const integer IntlChar::DT_VERTICAL = 16 ;
const integer IntlChar::DT_WIDE = 17 ;
const integer IntlChar::DT_COUNT = 18 ;
const integer IntlChar::JT_NON_JOINING = 0 ;
const integer IntlChar::JT_JOIN_CAUSING = 1 ;
const integer IntlChar::JT_DUAL_JOINING = 2 ;
const integer IntlChar::JT_LEFT_JOINING = 3 ;
const integer IntlChar::JT_RIGHT_JOINING = 4 ;
const integer IntlChar::JT_TRANSPARENT = 5 ;
const integer IntlChar::JT_COUNT = 6 ;
const integer IntlChar::JG_NO_JOINING_GROUP = 0 ;
const integer IntlChar::JG_AIN = 1 ;
const integer IntlChar::JG_ALAPH = 2 ;
const integer IntlChar::JG_ALEF = 3 ;
const integer IntlChar::JG_BEH = 4 ;
const integer IntlChar::JG_BETH = 5 ;
const integer IntlChar::JG_DAL = 6 ;
const integer IntlChar::JG_DALATH_RISH = 7 ;
const integer IntlChar::JG_E = 8 ;
const integer IntlChar::JG_FEH = 9 ;
const integer IntlChar::JG_FINAL_SEMKATH = 10 ;
const integer IntlChar::JG_GAF = 11 ;
const integer IntlChar::JG_GAMAL = 12 ;
const integer IntlChar::JG_HAH = 13 ;
const integer IntlChar::JG_TEH_MARBUTA_GOAL = 14 ;
const integer IntlChar::JG_HAMZA_ON_HEH_GOAL = 14 ;
const integer IntlChar::JG_HE = 15 ;
const integer IntlChar::JG_HEH = 16 ;
const integer IntlChar::JG_HEH_GOAL = 17 ;
const integer IntlChar::JG_HETH = 18 ;
const integer IntlChar::JG_KAF = 19 ;
const integer IntlChar::JG_KAPH = 20 ;
const integer IntlChar::JG_KNOTTED_HEH = 21 ;
const integer IntlChar::JG_LAM = 22 ;
const integer IntlChar::JG_LAMADH = 23 ;
const integer IntlChar::JG_MEEM = 24 ;
const integer IntlChar::JG_MIM = 25 ;
const integer IntlChar::JG_NOON = 26 ;
const integer IntlChar::JG_NUN = 27 ;
const integer IntlChar::JG_PE = 28 ;
const integer IntlChar::JG_QAF = 29 ;
const integer IntlChar::JG_QAPH = 30 ;
const integer IntlChar::JG_REH = 31 ;
const integer IntlChar::JG_REVERSED_PE = 32 ;
const integer IntlChar::JG_SAD = 33 ;
const integer IntlChar::JG_SADHE = 34 ;
const integer IntlChar::JG_SEEN = 35 ;
const integer IntlChar::JG_SEMKATH = 36 ;
const integer IntlChar::JG_SHIN = 37 ;
const integer IntlChar::JG_SWASH_KAF = 38 ;
const integer IntlChar::JG_SYRIAC_WAW = 39 ;
const integer IntlChar::JG_TAH = 40 ;
const integer IntlChar::JG_TAW = 41 ;
const integer IntlChar::JG_TEH_MARBUTA = 42 ;
const integer IntlChar::JG_TETH = 43 ;
const integer IntlChar::JG_WAW = 44 ;
const integer IntlChar::JG_YEH = 45 ;
const integer IntlChar::JG_YEH_BARREE = 46 ;
const integer IntlChar::JG_YEH_WITH_TAIL = 47 ;
const integer IntlChar::JG_YUDH = 48 ;
const integer IntlChar::JG_YUDH_HE = 49 ;
const integer IntlChar::JG_ZAIN = 50 ;
const integer IntlChar::JG_FE = 51 ;
const integer IntlChar::JG_KHAPH = 52 ;
const integer IntlChar::JG_ZHAIN = 53 ;
const integer IntlChar::JG_BURUSHASKI_YEH_BARREE = 54 ;
const integer IntlChar::JG_FARSI_YEH = 55 ;
const integer IntlChar::JG_NYA = 56 ;
const integer IntlChar::JG_ROHINGYA_YEH = 57 ;
const integer IntlChar::JG_COUNT = 58 ;
const integer IntlChar::GCB_OTHER = 0 ;
const integer IntlChar::GCB_CONTROL = 1 ;
const integer IntlChar::GCB_CR = 2 ;
const integer IntlChar::GCB_EXTEND = 3 ;
const integer IntlChar::GCB_L = 4 ;
const integer IntlChar::GCB_LF = 5 ;
const integer IntlChar::GCB_LV = 6 ;
const integer IntlChar::GCB_LVT = 7 ;
const integer IntlChar::GCB_T = 8 ;
const integer IntlChar::GCB_V = 9 ;
const integer IntlChar::GCB_SPACING_MARK = 10 ;
const integer IntlChar::GCB_PREPEND = 11 ;
const integer IntlChar::GCB_REGIONAL_INDICATOR = 12 ;
const integer IntlChar::GCB_COUNT = 13 ;
const integer IntlChar::WB_OTHER = 0 ;
const integer IntlChar::WB_ALETTER = 1 ;
const integer IntlChar::WB_FORMAT = 2 ;
const integer IntlChar::WB_KATAKANA = 3 ;
const integer IntlChar::WB_MIDLETTER = 4 ;
const integer IntlChar::WB_MIDNUM = 5 ;
const integer IntlChar::WB_NUMERIC = 6 ;
const integer IntlChar::WB_EXTENDNUMLET = 7 ;
const integer IntlChar::WB_CR = 8 ;
const integer IntlChar::WB_EXTEND = 9 ;
const integer IntlChar::WB_LF = 10 ;
const integer IntlChar::WB_MIDNUMLET = 11 ;
const integer IntlChar::WB_NEWLINE = 12 ;
const integer IntlChar::WB_REGIONAL_INDICATOR = 13 ;
const integer IntlChar::WB_HEBREW_LETTER = 14 ;
const integer IntlChar::WB_SINGLE_QUOTE = 15 ;
const integer IntlChar::WB_DOUBLE_QUOTE = 16 ;
const integer IntlChar::WB_COUNT = 17 ;
const integer IntlChar::SB_OTHER = 0 ;
const integer IntlChar::SB_ATERM = 1 ;
const integer IntlChar::SB_CLOSE = 2 ;
const integer IntlChar::SB_FORMAT = 3 ;
const integer IntlChar::SB_LOWER = 4 ;
const integer IntlChar::SB_NUMERIC = 5 ;
const integer IntlChar::SB_OLETTER = 6 ;
const integer IntlChar::SB_SEP = 7 ;
const integer IntlChar::SB_SP = 8 ;
const integer IntlChar::SB_STERM = 9 ;
const integer IntlChar::SB_UPPER = 10 ;
const integer IntlChar::SB_CR = 11 ;
const integer IntlChar::SB_EXTEND = 12 ;
const integer IntlChar::SB_LF = 13 ;
const integer IntlChar::SB_SCONTINUE = 14 ;
const integer IntlChar::SB_COUNT = 15 ;
const integer IntlChar::LB_UNKNOWN = 0 ;
const integer IntlChar::LB_AMBIGUOUS = 1 ;
const integer IntlChar::LB_ALPHABETIC = 2 ;
const integer IntlChar::LB_BREAK_BOTH = 3 ;
const integer IntlChar::LB_BREAK_AFTER = 4 ;
const integer IntlChar::LB_BREAK_BEFORE = 5 ;
const integer IntlChar::LB_MANDATORY_BREAK = 6 ;
const integer IntlChar::LB_CONTINGENT_BREAK = 7 ;
const integer IntlChar::LB_CLOSE_PUNCTUATION = 8 ;
const integer IntlChar::LB_COMBINING_MARK = 9 ;
const integer IntlChar::LB_CARRIAGE_RETURN = 10 ;
const integer IntlChar::LB_EXCLAMATION = 11 ;
const integer IntlChar::LB_GLUE = 12 ;
const integer IntlChar::LB_HYPHEN = 13 ;
const integer IntlChar::LB_IDEOGRAPHIC = 14 ;
const integer IntlChar::LB_INSEPARABLE = 15 ;
const integer IntlChar::LB_INSEPERABLE = 15 ;
const integer IntlChar::LB_INFIX_NUMERIC = 16 ;
const integer IntlChar::LB_LINE_FEED = 17 ;
const integer IntlChar::LB_NONSTARTER = 18 ;
const integer IntlChar::LB_NUMERIC = 19 ;
const integer IntlChar::LB_OPEN_PUNCTUATION = 20 ;
const integer IntlChar::LB_POSTFIX_NUMERIC = 21 ;
const integer IntlChar::LB_PREFIX_NUMERIC = 22 ;
const integer IntlChar::LB_QUOTATION = 23 ;
const integer IntlChar::LB_COMPLEX_CONTEXT = 24 ;
const integer IntlChar::LB_SURROGATE = 25 ;
const integer IntlChar::LB_SPACE = 26 ;
const integer IntlChar::LB_BREAK_SYMBOLS = 27 ;
const integer IntlChar::LB_ZWSPACE = 28 ;
const integer IntlChar::LB_NEXT_LINE = 29 ;
const integer IntlChar::LB_WORD_JOINER = 30 ;
const integer IntlChar::LB_H2 = 31 ;
const integer IntlChar::LB_H3 = 32 ;
const integer IntlChar::LB_JL = 33 ;
const integer IntlChar::LB_JT = 34 ;
const integer IntlChar::LB_JV = 35 ;
const integer IntlChar::LB_CLOSE_PARENTHESIS = 36 ;
const integer IntlChar::LB_CONDITIONAL_JAPANESE_STARTER = 37 ;
const integer IntlChar::LB_HEBREW_LETTER = 38 ;
const integer IntlChar::LB_REGIONAL_INDICATOR = 39 ;
const integer IntlChar::LB_COUNT = 40 ;
const integer IntlChar::NT_NONE = 0 ;
const integer IntlChar::NT_DECIMAL = 1 ;
const integer IntlChar::NT_DIGIT = 2 ;
const integer IntlChar::NT_NUMERIC = 3 ;
const integer IntlChar::NT_COUNT = 4 ;
const integer IntlChar::HST_NOT_APPLICABLE = 0 ;
const integer IntlChar::HST_LEADING_JAMO = 1 ;
const integer IntlChar::HST_VOWEL_JAMO = 2 ;
const integer IntlChar::HST_TRAILING_JAMO = 3 ;
const integer IntlChar::HST_LV_SYLLABLE = 4 ;
const integer IntlChar::HST_LVT_SYLLABLE = 5 ;
const integer IntlChar::HST_COUNT = 6 ;
/* Methods */
public static array charAge ( mixed $codepoint )
public static int charDigitValue ( mixed $codepoint )
public static int charDirection ( mixed $codepoint )
public static int charFromName ( string $characterName [, int $nameChoice = IntlChar::UNICODE_CHAR_NAME ] )
public static mixed charMirror ( mixed $codepoint )
public static string charName ( mixed $codepoint [, int $nameChoice = IntlChar::UNICODE_CHAR_NAME ] )
public static int charType ( mixed $codepoint )
public static string chr ( mixed $codepoint )
public static int digit ( string $codepoint [, int $radix = 10 ] )
public static void enumCharNames ( mixed $start , mixed $limit , callable $callback [, int $nameChoice = IntlChar::UNICODE_CHAR_NAME ] )
public static void enumCharTypes ( callable $callback )
public static mixed foldCase ( mixed $codepoint [, int $options = IntlChar::FOLD_CASE_DEFAULT ] )
public static int forDigit ( int $digit [, int $radix = 10 ] )
public static mixed getBidiPairedBracket ( mixed $codepoint )
public static int getBlockCode ( mixed $codepoint )
public static int getCombiningClass ( mixed $codepoint )
public static string getFC_NFKC_Closure ( mixed $codepoint )
public static int getIntPropertyMaxValue ( int $property )
public static int getIntPropertyMinValue ( int $property )
public static int getIntPropertyValue ( mixed $codepoint , int $property )
public static float getNumericValue ( mixed $codepoint )
public static int getPropertyEnum ( string $alias )
public static string getPropertyName ( int $property [, int $nameChoice = IntlChar::LONG_PROPERTY_NAME ] )
public static int getPropertyValueEnum ( int $property , string $name )
public static string getPropertyValueName ( int $property , int $value [, int $nameChoice = IntlChar::LONG_PROPERTY_NAME ] )
public static array getUnicodeVersion ( void )
public static bool hasBinaryProperty ( mixed $codepoint , int $property )
public static bool isalnum ( mixed $codepoint )
public static bool isalpha ( mixed $codepoint )
public static bool isbase ( mixed $codepoint )
public static bool isblank ( mixed $codepoint )
public static bool iscntrl ( mixed $codepoint )
public static bool isdefined ( mixed $codepoint )
public static bool isdigit ( mixed $codepoint )
public static bool isgraph ( mixed $codepoint )
public static bool isIDIgnorable ( mixed $codepoint )
public static bool isIDPart ( mixed $codepoint )
public static bool isIDStart ( mixed $codepoint )
public static bool isISOControl ( mixed $codepoint )
public static bool isJavaIDPart ( mixed $codepoint )
public static bool isJavaIDStart ( mixed $codepoint )
public static bool isJavaSpaceChar ( mixed $codepoint )
public static bool islower ( mixed $codepoint )
public static bool isMirrored ( mixed $codepoint )
public static bool isprint ( mixed $codepoint )
public static bool ispunct ( mixed $codepoint )
public static bool isspace ( mixed $codepoint )
public static bool istitle ( mixed $codepoint )
public static bool isUAlphabetic ( mixed $codepoint )
public static bool isULowercase ( mixed $codepoint )
public static bool isupper ( mixed $codepoint )
public static bool isUUppercase ( mixed $codepoint )
public static bool isUWhiteSpace ( mixed $codepoint )
public static bool isWhitespace ( mixed $codepoint )
public static bool isxdigit ( mixed $codepoint )
public static int ord ( mixed $character )
public static mixed tolower ( mixed $codepoint )
public static mixed totitle ( mixed $codepoint )
public static mixed toupper ( mixed $codepoint )
}

Predefined Constants

IntlChar::UNICODE_VERSION

IntlChar::CODEPOINT_MIN

IntlChar::CODEPOINT_MAX

IntlChar::NO_NUMERIC_VALUE

Special value that is returned by IntlChar::getNumericValue when no numeric value is defined for a code point.

IntlChar::PROPERTY_ALPHABETIC

IntlChar::PROPERTY_BINARY_START

IntlChar::PROPERTY_ASCII_HEX_DIGIT

IntlChar::PROPERTY_BIDI_CONTROL

IntlChar::PROPERTY_BIDI_MIRRORED

IntlChar::PROPERTY_DASH

IntlChar::PROPERTY_DEFAULT_IGNORABLE_CODE_POINT

IntlChar::PROPERTY_DEPRECATED

IntlChar::PROPERTY_DIACRITIC

IntlChar::PROPERTY_EXTENDER

IntlChar::PROPERTY_FULL_COMPOSITION_EXCLUSION

IntlChar::PROPERTY_GRAPHEME_BASE

IntlChar::PROPERTY_GRAPHEME_EXTEND

IntlChar::PROPERTY_HEX_DIGIT

IntlChar::PROPERTY_HYPHEN

IntlChar::PROPERTY_ID_CONTINUE

IntlChar::PROPERTY_ID_START

IntlChar::PROPERTY_IDEOGRAPHIC

IntlChar::PROPERTY_IDS_BINARY_OPERATOR

IntlChar::PROPERTY_IDS_TRINARY_OPERATOR

IntlChar::PROPERTY_JOIN_CONTROL

IntlChar::PROPERTY_LOGICAL_ORDER_EXCEPTION

IntlChar::PROPERTY_LOWERCASE

IntlChar::PROPERTY_MATH

IntlChar::PROPERTY_NONCHARACTER_CODE_POINT

IntlChar::PROPERTY_QUOTATION_MARK

IntlChar::PROPERTY_RADICAL

IntlChar::PROPERTY_SOFT_DOTTED

IntlChar::PROPERTY_TERMINAL_PUNCTUATION

IntlChar::PROPERTY_UNIFIED_IDEOGRAPH

IntlChar::PROPERTY_UPPERCASE

IntlChar::PROPERTY_WHITE_SPACE

IntlChar::PROPERTY_XID_CONTINUE

IntlChar::PROPERTY_XID_START

IntlChar::PROPERTY_CASE_SENSITIVE

IntlChar::PROPERTY_S_TERM

IntlChar::PROPERTY_VARIATION_SELECTOR

IntlChar::PROPERTY_NFD_INERT

IntlChar::PROPERTY_NFKD_INERT

IntlChar::PROPERTY_NFC_INERT

IntlChar::PROPERTY_NFKC_INERT

IntlChar::PROPERTY_SEGMENT_STARTER

IntlChar::PROPERTY_PATTERN_SYNTAX

IntlChar::PROPERTY_PATTERN_WHITE_SPACE

IntlChar::PROPERTY_POSIX_ALNUM

IntlChar::PROPERTY_POSIX_BLANK

IntlChar::PROPERTY_POSIX_GRAPH

IntlChar::PROPERTY_POSIX_PRINT

IntlChar::PROPERTY_POSIX_XDIGIT

IntlChar::PROPERTY_CASED

IntlChar::PROPERTY_CASE_IGNORABLE

IntlChar::PROPERTY_CHANGES_WHEN_LOWERCASED

IntlChar::PROPERTY_CHANGES_WHEN_UPPERCASED

IntlChar::PROPERTY_CHANGES_WHEN_TITLECASED

IntlChar::PROPERTY_CHANGES_WHEN_CASEFOLDED

IntlChar::PROPERTY_CHANGES_WHEN_CASEMAPPED

IntlChar::PROPERTY_CHANGES_WHEN_NFKC_CASEFOLDED

IntlChar::PROPERTY_BINARY_LIMIT

IntlChar::PROPERTY_BIDI_CLASS

IntlChar::PROPERTY_INT_START

IntlChar::PROPERTY_BLOCK

IntlChar::PROPERTY_CANONICAL_COMBINING_CLASS

IntlChar::PROPERTY_DECOMPOSITION_TYPE

IntlChar::PROPERTY_EAST_ASIAN_WIDTH

IntlChar::PROPERTY_GENERAL_CATEGORY

IntlChar::PROPERTY_JOINING_GROUP

IntlChar::PROPERTY_JOINING_TYPE

IntlChar::PROPERTY_LINE_BREAK

IntlChar::PROPERTY_NUMERIC_TYPE

IntlChar::PROPERTY_SCRIPT

IntlChar::PROPERTY_HANGUL_SYLLABLE_TYPE

IntlChar::PROPERTY_NFD_QUICK_CHECK

IntlChar::PROPERTY_NFKD_QUICK_CHECK

IntlChar::PROPERTY_NFC_QUICK_CHECK

IntlChar::PROPERTY_NFKC_QUICK_CHECK

IntlChar::PROPERTY_LEAD_CANONICAL_COMBINING_CLASS

IntlChar::PROPERTY_TRAIL_CANONICAL_COMBINING_CLASS

IntlChar::PROPERTY_GRAPHEME_CLUSTER_BREAK

IntlChar::PROPERTY_SENTENCE_BREAK

IntlChar::PROPERTY_WORD_BREAK

IntlChar::PROPERTY_BIDI_PAIRED_BRACKET_TYPE

IntlChar::PROPERTY_INT_LIMIT

IntlChar::PROPERTY_GENERAL_CATEGORY_MASK

IntlChar::PROPERTY_MASK_START

IntlChar::PROPERTY_MASK_LIMIT

IntlChar::PROPERTY_NUMERIC_VALUE

IntlChar::PROPERTY_DOUBLE_START

IntlChar::PROPERTY_DOUBLE_LIMIT

IntlChar::PROPERTY_AGE

IntlChar::PROPERTY_STRING_START

IntlChar::PROPERTY_BIDI_MIRRORING_GLYPH

IntlChar::PROPERTY_CASE_FOLDING

IntlChar::PROPERTY_ISO_COMMENT

IntlChar::PROPERTY_LOWERCASE_MAPPING

IntlChar::PROPERTY_NAME

IntlChar::PROPERTY_SIMPLE_CASE_FOLDING

IntlChar::PROPERTY_SIMPLE_LOWERCASE_MAPPING

IntlChar::PROPERTY_SIMPLE_TITLECASE_MAPPING

IntlChar::PROPERTY_SIMPLE_UPPERCASE_MAPPING

IntlChar::PROPERTY_TITLECASE_MAPPING

IntlChar::PROPERTY_UNICODE_1_NAME

IntlChar::PROPERTY_UPPERCASE_MAPPING

IntlChar::PROPERTY_BIDI_PAIRED_BRACKET

IntlChar::PROPERTY_STRING_LIMIT

IntlChar::PROPERTY_SCRIPT_EXTENSIONS

IntlChar::PROPERTY_OTHER_PROPERTY_START

IntlChar::PROPERTY_OTHER_PROPERTY_LIMIT

IntlChar::PROPERTY_INVALID_CODE

IntlChar::CHAR_CATEGORY_UNASSIGNED

IntlChar::CHAR_CATEGORY_GENERAL_OTHER_TYPES

IntlChar::CHAR_CATEGORY_UPPERCASE_LETTER

IntlChar::CHAR_CATEGORY_LOWERCASE_LETTER

IntlChar::CHAR_CATEGORY_TITLECASE_LETTER

IntlChar::CHAR_CATEGORY_MODIFIER_LETTER

IntlChar::CHAR_CATEGORY_OTHER_LETTER

IntlChar::CHAR_CATEGORY_NON_SPACING_MARK

IntlChar::CHAR_CATEGORY_ENCLOSING_MARK

IntlChar::CHAR_CATEGORY_COMBINING_SPACING_MARK

IntlChar::CHAR_CATEGORY_DECIMAL_DIGIT_NUMBER

IntlChar::CHAR_CATEGORY_LETTER_NUMBER

IntlChar::CHAR_CATEGORY_OTHER_NUMBER

IntlChar::CHAR_CATEGORY_SPACE_SEPARATOR

IntlChar::CHAR_CATEGORY_LINE_SEPARATOR

IntlChar::CHAR_CATEGORY_PARAGRAPH_SEPARATOR

IntlChar::CHAR_CATEGORY_CONTROL_CHAR

IntlChar::CHAR_CATEGORY_FORMAT_CHAR

IntlChar::CHAR_CATEGORY_PRIVATE_USE_CHAR

IntlChar::CHAR_CATEGORY_SURROGATE

IntlChar::CHAR_CATEGORY_DASH_PUNCTUATION

IntlChar::CHAR_CATEGORY_START_PUNCTUATION

IntlChar::CHAR_CATEGORY_END_PUNCTUATION

IntlChar::CHAR_CATEGORY_CONNECTOR_PUNCTUATION

IntlChar::CHAR_CATEGORY_OTHER_PUNCTUATION

IntlChar::CHAR_CATEGORY_MATH_SYMBOL

IntlChar::CHAR_CATEGORY_CURRENCY_SYMBOL

IntlChar::CHAR_CATEGORY_MODIFIER_SYMBOL

IntlChar::CHAR_CATEGORY_OTHER_SYMBOL

IntlChar::CHAR_CATEGORY_INITIAL_PUNCTUATION

IntlChar::CHAR_CATEGORY_FINAL_PUNCTUATION

IntlChar::CHAR_CATEGORY_CHAR_CATEGORY_COUNT

IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT

IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT

IntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER

IntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER_SEPARATOR

IntlChar::CHAR_DIRECTION_EUROPEAN_NUMBER_TERMINATOR

IntlChar::CHAR_DIRECTION_ARABIC_NUMBER

IntlChar::CHAR_DIRECTION_COMMON_NUMBER_SEPARATOR

IntlChar::CHAR_DIRECTION_BLOCK_SEPARATOR

IntlChar::CHAR_DIRECTION_SEGMENT_SEPARATOR

IntlChar::CHAR_DIRECTION_WHITE_SPACE_NEUTRAL

IntlChar::CHAR_DIRECTION_OTHER_NEUTRAL

IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_EMBEDDING

IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_OVERRIDE

IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_ARABIC

IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_EMBEDDING

IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_OVERRIDE

IntlChar::CHAR_DIRECTION_POP_DIRECTIONAL_FORMAT

IntlChar::CHAR_DIRECTION_DIR_NON_SPACING_MARK

IntlChar::CHAR_DIRECTION_BOUNDARY_NEUTRAL

IntlChar::CHAR_DIRECTION_FIRST_STRONG_ISOLATE

IntlChar::CHAR_DIRECTION_LEFT_TO_RIGHT_ISOLATE

IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT_ISOLATE

IntlChar::CHAR_DIRECTION_POP_DIRECTIONAL_ISOLATE

IntlChar::CHAR_DIRECTION_CHAR_DIRECTION_COUNT

IntlChar::BLOCK_CODE_NO_BLOCK

IntlChar::BLOCK_CODE_BASIC_LATIN

IntlChar::BLOCK_CODE_LATIN_1_SUPPLEMENT

IntlChar::BLOCK_CODE_LATIN_EXTENDED_A

IntlChar::BLOCK_CODE_LATIN_EXTENDED_B

IntlChar::BLOCK_CODE_IPA_EXTENSIONS

IntlChar::BLOCK_CODE_SPACING_MODIFIER_LETTERS

IntlChar::BLOCK_CODE_COMBINING_DIACRITICAL_MARKS

IntlChar::BLOCK_CODE_GREEK

IntlChar::BLOCK_CODE_CYRILLIC

IntlChar::BLOCK_CODE_ARMENIAN

IntlChar::BLOCK_CODE_HEBREW

IntlChar::BLOCK_CODE_ARABIC

IntlChar::BLOCK_CODE_SYRIAC

IntlChar::BLOCK_CODE_THAANA

IntlChar::BLOCK_CODE_DEVANAGARI

IntlChar::BLOCK_CODE_BENGALI

IntlChar::BLOCK_CODE_GURMUKHI

IntlChar::BLOCK_CODE_GUJARATI

IntlChar::BLOCK_CODE_ORIYA

IntlChar::BLOCK_CODE_TAMIL

IntlChar::BLOCK_CODE_TELUGU

IntlChar::BLOCK_CODE_KANNADA

IntlChar::BLOCK_CODE_MALAYALAM

IntlChar::BLOCK_CODE_SINHALA

IntlChar::BLOCK_CODE_THAI

IntlChar::BLOCK_CODE_LAO

IntlChar::BLOCK_CODE_TIBETAN

IntlChar::BLOCK_CODE_MYANMAR

IntlChar::BLOCK_CODE_GEORGIAN

IntlChar::BLOCK_CODE_HANGUL_JAMO

IntlChar::BLOCK_CODE_ETHIOPIC

IntlChar::BLOCK_CODE_CHEROKEE

IntlChar::BLOCK_CODE_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS

IntlChar::BLOCK_CODE_OGHAM

IntlChar::BLOCK_CODE_RUNIC

IntlChar::BLOCK_CODE_KHMER

IntlChar::BLOCK_CODE_MONGOLIAN

IntlChar::BLOCK_CODE_LATIN_EXTENDED_ADDITIONAL

IntlChar::BLOCK_CODE_GREEK_EXTENDED

IntlChar::BLOCK_CODE_GENERAL_PUNCTUATION

IntlChar::BLOCK_CODE_SUPERSCRIPTS_AND_SUBSCRIPTS

IntlChar::BLOCK_CODE_CURRENCY_SYMBOLS

IntlChar::BLOCK_CODE_COMBINING_MARKS_FOR_SYMBOLS

IntlChar::BLOCK_CODE_LETTERLIKE_SYMBOLS

IntlChar::BLOCK_CODE_NUMBER_FORMS

IntlChar::BLOCK_CODE_ARROWS

IntlChar::BLOCK_CODE_MATHEMATICAL_OPERATORS

IntlChar::BLOCK_CODE_MISCELLANEOUS_TECHNICAL

IntlChar::BLOCK_CODE_CONTROL_PICTURES

IntlChar::BLOCK_CODE_OPTICAL_CHARACTER_RECOGNITION

IntlChar::BLOCK_CODE_ENCLOSED_ALPHANUMERICS

IntlChar::BLOCK_CODE_BOX_DRAWING

IntlChar::BLOCK_CODE_BLOCK_ELEMENTS

IntlChar::BLOCK_CODE_GEOMETRIC_SHAPES

IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS

IntlChar::BLOCK_CODE_DINGBATS

IntlChar::BLOCK_CODE_BRAILLE_PATTERNS

IntlChar::BLOCK_CODE_CJK_RADICALS_SUPPLEMENT

IntlChar::BLOCK_CODE_KANGXI_RADICALS

IntlChar::BLOCK_CODE_IDEOGRAPHIC_DESCRIPTION_CHARACTERS

IntlChar::BLOCK_CODE_CJK_SYMBOLS_AND_PUNCTUATION

IntlChar::BLOCK_CODE_HIRAGANA

IntlChar::BLOCK_CODE_KATAKANA

IntlChar::BLOCK_CODE_BOPOMOFO

IntlChar::BLOCK_CODE_HANGUL_COMPATIBILITY_JAMO

IntlChar::BLOCK_CODE_KANBUN

IntlChar::BLOCK_CODE_BOPOMOFO_EXTENDED

IntlChar::BLOCK_CODE_ENCLOSED_CJK_LETTERS_AND_MONTHS

IntlChar::BLOCK_CODE_CJK_COMPATIBILITY

IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A

IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS

IntlChar::BLOCK_CODE_YI_SYLLABLES

IntlChar::BLOCK_CODE_YI_RADICALS

IntlChar::BLOCK_CODE_HANGUL_SYLLABLES

IntlChar::BLOCK_CODE_HIGH_SURROGATES

IntlChar::BLOCK_CODE_HIGH_PRIVATE_USE_SURROGATES

IntlChar::BLOCK_CODE_LOW_SURROGATES

IntlChar::BLOCK_CODE_PRIVATE_USE_AREA

IntlChar::BLOCK_CODE_PRIVATE_USE

IntlChar::BLOCK_CODE_CJK_COMPATIBILITY_IDEOGRAPHS

IntlChar::BLOCK_CODE_ALPHABETIC_PRESENTATION_FORMS

IntlChar::BLOCK_CODE_ARABIC_PRESENTATION_FORMS_A

IntlChar::BLOCK_CODE_COMBINING_HALF_MARKS

IntlChar::BLOCK_CODE_CJK_COMPATIBILITY_FORMS

IntlChar::BLOCK_CODE_SMALL_FORM_VARIANTS

IntlChar::BLOCK_CODE_ARABIC_PRESENTATION_FORMS_B

IntlChar::BLOCK_CODE_SPECIALS

IntlChar::BLOCK_CODE_HALFWIDTH_AND_FULLWIDTH_FORMS

IntlChar::BLOCK_CODE_OLD_ITALIC

IntlChar::BLOCK_CODE_GOTHIC

IntlChar::BLOCK_CODE_DESERET

IntlChar::BLOCK_CODE_BYZANTINE_MUSICAL_SYMBOLS

IntlChar::BLOCK_CODE_MUSICAL_SYMBOLS

IntlChar::BLOCK_CODE_MATHEMATICAL_ALPHANUMERIC_SYMBOLS

IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B

IntlChar::BLOCK_CODE_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT

IntlChar::BLOCK_CODE_TAGS

IntlChar::BLOCK_CODE_CYRILLIC_SUPPLEMENT

IntlChar::BLOCK_CODE_CYRILLIC_SUPPLEMENTARY

IntlChar::BLOCK_CODE_TAGALOG

IntlChar::BLOCK_CODE_HANUNOO

IntlChar::BLOCK_CODE_BUHID

IntlChar::BLOCK_CODE_TAGBANWA

IntlChar::BLOCK_CODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A

IntlChar::BLOCK_CODE_SUPPLEMENTAL_ARROWS_A

IntlChar::BLOCK_CODE_SUPPLEMENTAL_ARROWS_B

IntlChar::BLOCK_CODE_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B

IntlChar::BLOCK_CODE_SUPPLEMENTAL_MATHEMATICAL_OPERATORS

IntlChar::BLOCK_CODE_KATAKANA_PHONETIC_EXTENSIONS

IntlChar::BLOCK_CODE_VARIATION_SELECTORS

IntlChar::BLOCK_CODE_SUPPLEMENTARY_PRIVATE_USE_AREA_A

IntlChar::BLOCK_CODE_SUPPLEMENTARY_PRIVATE_USE_AREA_B

IntlChar::BLOCK_CODE_LIMBU

IntlChar::BLOCK_CODE_TAI_LE

IntlChar::BLOCK_CODE_KHMER_SYMBOLS

IntlChar::BLOCK_CODE_PHONETIC_EXTENSIONS

IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS_AND_ARROWS

IntlChar::BLOCK_CODE_YIJING_HEXAGRAM_SYMBOLS

IntlChar::BLOCK_CODE_LINEAR_B_SYLLABARY

IntlChar::BLOCK_CODE_LINEAR_B_IDEOGRAMS

IntlChar::BLOCK_CODE_AEGEAN_NUMBERS

IntlChar::BLOCK_CODE_UGARITIC

IntlChar::BLOCK_CODE_SHAVIAN

IntlChar::BLOCK_CODE_OSMANYA

IntlChar::BLOCK_CODE_CYPRIOT_SYLLABARY

IntlChar::BLOCK_CODE_TAI_XUAN_JING_SYMBOLS

IntlChar::BLOCK_CODE_VARIATION_SELECTORS_SUPPLEMENT

IntlChar::BLOCK_CODE_ANCIENT_GREEK_MUSICAL_NOTATION

IntlChar::BLOCK_CODE_ANCIENT_GREEK_NUMBERS

IntlChar::BLOCK_CODE_ARABIC_SUPPLEMENT

IntlChar::BLOCK_CODE_BUGINESE

IntlChar::BLOCK_CODE_CJK_STROKES

IntlChar::BLOCK_CODE_COMBINING_DIACRITICAL_MARKS_SUPPLEMENT

IntlChar::BLOCK_CODE_COPTIC

IntlChar::BLOCK_CODE_ETHIOPIC_EXTENDED

IntlChar::BLOCK_CODE_ETHIOPIC_SUPPLEMENT

IntlChar::BLOCK_CODE_GEORGIAN_SUPPLEMENT

IntlChar::BLOCK_CODE_GLAGOLITIC

IntlChar::BLOCK_CODE_KHAROSHTHI

IntlChar::BLOCK_CODE_MODIFIER_TONE_LETTERS

IntlChar::BLOCK_CODE_NEW_TAI_LUE

IntlChar::BLOCK_CODE_OLD_PERSIAN

IntlChar::BLOCK_CODE_PHONETIC_EXTENSIONS_SUPPLEMENT

IntlChar::BLOCK_CODE_SUPPLEMENTAL_PUNCTUATION

IntlChar::BLOCK_CODE_SYLOTI_NAGRI

IntlChar::BLOCK_CODE_TIFINAGH

IntlChar::BLOCK_CODE_VERTICAL_FORMS

IntlChar::BLOCK_CODE_NKO

IntlChar::BLOCK_CODE_BALINESE

IntlChar::BLOCK_CODE_LATIN_EXTENDED_C

IntlChar::BLOCK_CODE_LATIN_EXTENDED_D

IntlChar::BLOCK_CODE_PHAGS_PA

IntlChar::BLOCK_CODE_PHOENICIAN

IntlChar::BLOCK_CODE_CUNEIFORM

IntlChar::BLOCK_CODE_CUNEIFORM_NUMBERS_AND_PUNCTUATION

IntlChar::BLOCK_CODE_COUNTING_ROD_NUMERALS

IntlChar::BLOCK_CODE_SUNDANESE

IntlChar::BLOCK_CODE_LEPCHA

IntlChar::BLOCK_CODE_OL_CHIKI

IntlChar::BLOCK_CODE_CYRILLIC_EXTENDED_A

IntlChar::BLOCK_CODE_VAI

IntlChar::BLOCK_CODE_CYRILLIC_EXTENDED_B

IntlChar::BLOCK_CODE_SAURASHTRA

IntlChar::BLOCK_CODE_KAYAH_LI

IntlChar::BLOCK_CODE_REJANG

IntlChar::BLOCK_CODE_CHAM

IntlChar::BLOCK_CODE_ANCIENT_SYMBOLS

IntlChar::BLOCK_CODE_PHAISTOS_DISC

IntlChar::BLOCK_CODE_LYCIAN

IntlChar::BLOCK_CODE_CARIAN

IntlChar::BLOCK_CODE_LYDIAN

IntlChar::BLOCK_CODE_MAHJONG_TILES

IntlChar::BLOCK_CODE_DOMINO_TILES

IntlChar::BLOCK_CODE_SAMARITAN

IntlChar::BLOCK_CODE_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED

IntlChar::BLOCK_CODE_TAI_THAM

IntlChar::BLOCK_CODE_VEDIC_EXTENSIONS

IntlChar::BLOCK_CODE_LISU

IntlChar::BLOCK_CODE_BAMUM

IntlChar::BLOCK_CODE_COMMON_INDIC_NUMBER_FORMS

IntlChar::BLOCK_CODE_DEVANAGARI_EXTENDED

IntlChar::BLOCK_CODE_HANGUL_JAMO_EXTENDED_A

IntlChar::BLOCK_CODE_JAVANESE

IntlChar::BLOCK_CODE_MYANMAR_EXTENDED_A

IntlChar::BLOCK_CODE_TAI_VIET

IntlChar::BLOCK_CODE_MEETEI_MAYEK

IntlChar::BLOCK_CODE_HANGUL_JAMO_EXTENDED_B

IntlChar::BLOCK_CODE_IMPERIAL_ARAMAIC

IntlChar::BLOCK_CODE_OLD_SOUTH_ARABIAN

IntlChar::BLOCK_CODE_AVESTAN

IntlChar::BLOCK_CODE_INSCRIPTIONAL_PARTHIAN

IntlChar::BLOCK_CODE_INSCRIPTIONAL_PAHLAVI

IntlChar::BLOCK_CODE_OLD_TURKIC

IntlChar::BLOCK_CODE_RUMI_NUMERAL_SYMBOLS

IntlChar::BLOCK_CODE_KAITHI

IntlChar::BLOCK_CODE_EGYPTIAN_HIEROGLYPHS

IntlChar::BLOCK_CODE_ENCLOSED_ALPHANUMERIC_SUPPLEMENT

IntlChar::BLOCK_CODE_ENCLOSED_IDEOGRAPHIC_SUPPLEMENT

IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C

IntlChar::BLOCK_CODE_MANDAIC

IntlChar::BLOCK_CODE_BATAK

IntlChar::BLOCK_CODE_ETHIOPIC_EXTENDED_A

IntlChar::BLOCK_CODE_BRAHMI

IntlChar::BLOCK_CODE_BAMUM_SUPPLEMENT

IntlChar::BLOCK_CODE_KANA_SUPPLEMENT

IntlChar::BLOCK_CODE_PLAYING_CARDS

IntlChar::BLOCK_CODE_MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS

IntlChar::BLOCK_CODE_EMOTICONS

IntlChar::BLOCK_CODE_TRANSPORT_AND_MAP_SYMBOLS

IntlChar::BLOCK_CODE_ALCHEMICAL_SYMBOLS

IntlChar::BLOCK_CODE_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D

IntlChar::BLOCK_CODE_ARABIC_EXTENDED_A

IntlChar::BLOCK_CODE_ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS

IntlChar::BLOCK_CODE_CHAKMA

IntlChar::BLOCK_CODE_MEETEI_MAYEK_EXTENSIONS

IntlChar::BLOCK_CODE_MEROITIC_CURSIVE

IntlChar::BLOCK_CODE_MEROITIC_HIEROGLYPHS

IntlChar::BLOCK_CODE_MIAO

IntlChar::BLOCK_CODE_SHARADA

IntlChar::BLOCK_CODE_SORA_SOMPENG

IntlChar::BLOCK_CODE_SUNDANESE_SUPPLEMENT

IntlChar::BLOCK_CODE_TAKRI

IntlChar::BLOCK_CODE_COUNT

IntlChar::BLOCK_CODE_INVALID_CODE

IntlChar::BPT_NONE

IntlChar::BPT_OPEN

IntlChar::BPT_CLOSE

IntlChar::BPT_COUNT

IntlChar::EA_NEUTRAL

IntlChar::EA_AMBIGUOUS

IntlChar::EA_HALFWIDTH

IntlChar::EA_FULLWIDTH

IntlChar::EA_NARROW

IntlChar::EA_WIDE

IntlChar::EA_COUNT

IntlChar::UNICODE_CHAR_NAME

IntlChar::UNICODE_10_CHAR_NAME

IntlChar::EXTENDED_CHAR_NAME

IntlChar::CHAR_NAME_ALIAS

IntlChar::CHAR_NAME_CHOICE_COUNT

IntlChar::SHORT_PROPERTY_NAME

IntlChar::LONG_PROPERTY_NAME

IntlChar::PROPERTY_NAME_CHOICE_COUNT

IntlChar::DT_NONE

IntlChar::DT_CANONICAL

IntlChar::DT_COMPAT

IntlChar::DT_CIRCLE

IntlChar::DT_FINAL

IntlChar::DT_FONT

IntlChar::DT_FRACTION

IntlChar::DT_INITIAL

IntlChar::DT_ISOLATED

IntlChar::DT_MEDIAL

IntlChar::DT_NARROW

IntlChar::DT_NOBREAK

IntlChar::DT_SMALL

IntlChar::DT_SQUARE

IntlChar::DT_SUB

IntlChar::DT_SUPER

IntlChar::DT_VERTICAL

IntlChar::DT_WIDE

IntlChar::DT_COUNT

IntlChar::JT_NON_JOINING

IntlChar::JT_JOIN_CAUSING

IntlChar::JT_DUAL_JOINING

IntlChar::JT_LEFT_JOINING

IntlChar::JT_RIGHT_JOINING

IntlChar::JT_TRANSPARENT

IntlChar::JT_COUNT

IntlChar::JG_NO_JOINING_GROUP

IntlChar::JG_AIN

IntlChar::JG_ALAPH

IntlChar::JG_ALEF

IntlChar::JG_BEH

IntlChar::JG_BETH

IntlChar::JG_DAL

IntlChar::JG_DALATH_RISH

IntlChar::JG_E

IntlChar::JG_FEH

IntlChar::JG_FINAL_SEMKATH

IntlChar::JG_GAF

IntlChar::JG_GAMAL

IntlChar::JG_HAH

IntlChar::JG_TEH_MARBUTA_GOAL

IntlChar::JG_HAMZA_ON_HEH_GOAL

IntlChar::JG_HE

IntlChar::JG_HEH

IntlChar::JG_HEH_GOAL

IntlChar::JG_HETH

IntlChar::JG_KAF

IntlChar::JG_KAPH

IntlChar::JG_KNOTTED_HEH

IntlChar::JG_LAM

IntlChar::JG_LAMADH

IntlChar::JG_MEEM

IntlChar::JG_MIM

IntlChar::JG_NOON

IntlChar::JG_NUN

IntlChar::JG_PE

IntlChar::JG_QAF

IntlChar::JG_QAPH

IntlChar::JG_REH

IntlChar::JG_REVERSED_PE

IntlChar::JG_SAD

IntlChar::JG_SADHE

IntlChar::JG_SEEN

IntlChar::JG_SEMKATH

IntlChar::JG_SHIN

IntlChar::JG_SWASH_KAF

IntlChar::JG_SYRIAC_WAW

IntlChar::JG_TAH

IntlChar::JG_TAW

IntlChar::JG_TEH_MARBUTA

IntlChar::JG_TETH

IntlChar::JG_WAW

IntlChar::JG_YEH

IntlChar::JG_YEH_BARREE

IntlChar::JG_YEH_WITH_TAIL

IntlChar::JG_YUDH

IntlChar::JG_YUDH_HE

IntlChar::JG_ZAIN

IntlChar::JG_FE

IntlChar::JG_KHAPH

IntlChar::JG_ZHAIN

IntlChar::JG_BURUSHASKI_YEH_BARREE

IntlChar::JG_FARSI_YEH

IntlChar::JG_NYA

IntlChar::JG_ROHINGYA_YEH

IntlChar::JG_COUNT

IntlChar::GCB_OTHER

IntlChar::GCB_CONTROL

IntlChar::GCB_CR

IntlChar::GCB_EXTEND

IntlChar::GCB_L

IntlChar::GCB_LF

IntlChar::GCB_LV

IntlChar::GCB_LVT

IntlChar::GCB_T

IntlChar::GCB_V

IntlChar::GCB_SPACING_MARK

IntlChar::GCB_PREPEND

IntlChar::GCB_REGIONAL_INDICATOR

IntlChar::GCB_COUNT

IntlChar::WB_OTHER

IntlChar::WB_ALETTER

IntlChar::WB_FORMAT

IntlChar::WB_KATAKANA

IntlChar::WB_MIDLETTER

IntlChar::WB_MIDNUM

IntlChar::WB_NUMERIC

IntlChar::WB_EXTENDNUMLET

IntlChar::WB_CR

IntlChar::WB_EXTEND

IntlChar::WB_LF

IntlChar::WB_MIDNUMLET

IntlChar::WB_NEWLINE

IntlChar::WB_REGIONAL_INDICATOR

IntlChar::WB_HEBREW_LETTER

IntlChar::WB_SINGLE_QUOTE

IntlChar::WB_DOUBLE_QUOTE

IntlChar::WB_COUNT

IntlChar::SB_OTHER

IntlChar::SB_ATERM

IntlChar::SB_CLOSE

IntlChar::SB_FORMAT

IntlChar::SB_LOWER

IntlChar::SB_NUMERIC

IntlChar::SB_OLETTER

IntlChar::SB_SEP

IntlChar::SB_SP

IntlChar::SB_STERM

IntlChar::SB_UPPER

IntlChar::SB_CR

IntlChar::SB_EXTEND

IntlChar::SB_LF

IntlChar::SB_SCONTINUE

IntlChar::SB_COUNT

IntlChar::LB_UNKNOWN

IntlChar::LB_AMBIGUOUS

IntlChar::LB_ALPHABETIC

IntlChar::LB_BREAK_BOTH

IntlChar::LB_BREAK_AFTER

IntlChar::LB_BREAK_BEFORE

IntlChar::LB_MANDATORY_BREAK

IntlChar::LB_CONTINGENT_BREAK

IntlChar::LB_CLOSE_PUNCTUATION

IntlChar::LB_COMBINING_MARK

IntlChar::LB_CARRIAGE_RETURN

IntlChar::LB_EXCLAMATION

IntlChar::LB_GLUE

IntlChar::LB_HYPHEN

IntlChar::LB_IDEOGRAPHIC

IntlChar::LB_INSEPARABLE

IntlChar::LB_INSEPERABLE

IntlChar::LB_INFIX_NUMERIC

IntlChar::LB_LINE_FEED

IntlChar::LB_NONSTARTER

IntlChar::LB_NUMERIC

IntlChar::LB_OPEN_PUNCTUATION

IntlChar::LB_POSTFIX_NUMERIC

IntlChar::LB_PREFIX_NUMERIC

IntlChar::LB_QUOTATION

IntlChar::LB_COMPLEX_CONTEXT

IntlChar::LB_SURROGATE

IntlChar::LB_SPACE

IntlChar::LB_BREAK_SYMBOLS

IntlChar::LB_ZWSPACE

IntlChar::LB_NEXT_LINE

IntlChar::LB_WORD_JOINER

IntlChar::LB_H2

IntlChar::LB_H3

IntlChar::LB_JL

IntlChar::LB_JT

IntlChar::LB_JV

IntlChar::LB_CLOSE_PARENTHESIS

IntlChar::LB_CONDITIONAL_JAPANESE_STARTER

IntlChar::LB_HEBREW_LETTER

IntlChar::LB_REGIONAL_INDICATOR

IntlChar::LB_COUNT

IntlChar::NT_NONE

IntlChar::NT_DECIMAL

IntlChar::NT_DIGIT

IntlChar::NT_NUMERIC

IntlChar::NT_COUNT

IntlChar::HST_NOT_APPLICABLE

IntlChar::HST_LEADING_JAMO

IntlChar::HST_VOWEL_JAMO

IntlChar::HST_TRAILING_JAMO

IntlChar::HST_LV_SYLLABLE

IntlChar::HST_LVT_SYLLABLE

IntlChar::HST_COUNT

IntlChar::FOLD_CASE_DEFAULT

IntlChar::FOLD_CASE_EXCLUDE_SPECIAL_I

Changelog

Version Description
7.0.6 The IntlChar::NO_NUMERIC_VALUE constant was added.

Exception class for intl errors

Introduction

This class is used for generating exceptions when errors occur inside intl functions. Such exceptions are only generated when intl.use_exceptions is enabled.

Class synopsis

IntlException
class IntlException extends Exception {
/* Inherited properties */
protected string $message ;
protected int $code ;
protected string $file ;
protected int $line ;
/* Inherited methods */
final public string Exception::getMessage ( void )
final public Throwable Exception::getPrevious ( void )
final public mixed Exception::getCode ( void )
final public string Exception::getFile ( void )
final public int Exception::getLine ( void )
final public array Exception::getTrace ( void )
final public string Exception::getTraceAsString ( void )
public string Exception::__toString ( void )
final private void Exception::__clone ( void )
}

The IntlIterator class

Introduction

This class represents iterator objects throughout the intl extension whenever the iterator cannot be identified with any other object provided by the extension. The distinct iterator object used internally by the foreach construct can only be obtained (in the relevant part here) from objects, so objects of this class serve the purpose of providing the hook through which this internal object can be obtained. As a convenience, this class also implements the Iterator interface, allowing the collection of values to be navigated using the methods defined in that interface. Both these methods and the internal iterator objects provided to foreach are backed by the same state (e.g. the position of the iterator and its current value).

Subclasses may provide richer functionality.

Class synopsis

IntlIterator
class IntlIterator implements Iterator {
/* Methods */
public ReturnType current ( void )
public ReturnType key ( void )
public ReturnType next ( void )
public ReturnType rewind ( void )
public ReturnType valid ( void )
}