Php/docs/intlchar.getpropertyvaluename
IntlChar::getPropertyValueName
(PHP 7)
IntlChar::getPropertyValueName — Get the Unicode name for a property value
说明
public static IntlChar::getPropertyValueName
( int $property
, int $value
[, int $nameChoice = IntlChar::LONG_PROPERTY_NAME
] ) : string
Returns the Unicode name for a given property value, as given in the Unicode database file PropertyValueAliases.txt.
Note:
Some of the names in PropertyValueAliases.txt can only be retrieved using
IntlChar::PROPERTY_GENERAL_CATEGORY_MASK, notIntlChar::PROPERTY_GENERAL_CATEGORY. These include:
- "C" / "Other"
- "L" / "Letter"
- "LC" / "Cased_Letter"
- "M" / "Mark"
- "N" / "Number"
- "P" / "Punctuation"
- "S" / "Symbol"
- "Z" / "Separator"
参数
propertyThe Unicode property to lookup (see the
IntlChar::PROPERTY_*constants).If out of range, or this method doesn't work with the given value,
falseis returned.valueSelector for a value for the given property. If out of range,
falseis returned.In general, valid values range from
0up to some maximum. There are a couple exceptions:IntlChar::PROPERTY_BLOCKvalues begin at the non-zero valueIntlChar::BLOCK_CODE_BASIC_LATINIntlChar::PROPERTY_CANONICAL_COMBINING_CLASSvalues are not contiguous and range from 0..240.
nameChoiceSelector for which name to get. If out of range,
falseis returned.All values have a long name. Most have a short name, but some do not. Unicode allows for additional names; if present these will be returned by adding 1, 2, etc. to
IntlChar::LONG_PROPERTY_NAME.
返回值
Returns the name, or false if either the property or the nameChoice
is out of range.
If a given nameChoice returns false, then all larger values of nameChoice
will return false, with one exception: if false is returned for IntlChar::SHORT_PROPERTY_NAME,
then IntlChar::LONG_PROPERTY_NAME (and higher) may still return a non-false value.
范例
Example #1 Testing different properties
<?phpvar_dump(IntlChar::getPropertyValueName(IntlChar::PROPERTY_BLOCK, IntlChar::BLOCK_CODE_GREEK));var_dump(IntlChar::getPropertyValueName(IntlChar::PROPERTY_BLOCK, IntlChar::BLOCK_CODE_GREEK, IntlChar::SHORT_PROPERTY_NAME));var_dump(IntlChar::getPropertyValueName(IntlChar::PROPERTY_BLOCK, IntlChar::BLOCK_CODE_GREEK, IntlChar::LONG_PROPERTY_NAME));var_dump(IntlChar::getPropertyValueName(IntlChar::PROPERTY_BLOCK, IntlChar::BLOCK_CODE_GREEK, IntlChar::LONG_PROPERTY_NAME + 1));?>
以上例程会输出:
string(16) "Greek_And_Coptic" string(5) "Greek" string(16) "Greek_And_Coptic" bool(false)