(PHP 7, PHP 8)
IntlChar::getPropertyValueEnum — 获取给定值名称的属性值
返回给定值名称的属性值整数,如 Unicode 数据库文件 PropertyValueAliases.txt 中所指定。识别短名称、长名称和任何其他变体。
注意:
PropertyValueAliases.txt 中的一些名称仅在使用
IntlChar::PROPERTY_GENERAL_CATEGORY_MASK
时才会被识别,而不是IntlChar::PROPERTY_GENERAL_CATEGORY
。这些包括
- "C" / "Other"
- "L" / "Letter"
- "LC" / "Cased_Letter"
- "M" / "Mark"
- "N" / "Number"
- "P" / "Punctuation"
- "S" / "Symbol"
- "Z" / "Separator"
property
要查找的 Unicode 属性(请参阅IntlChar::PROPERTY_*
常量)。
如果超出范围,或者此方法不适用于给定值,则返回IntlChar::PROPERTY_INVALID_CODE
。
name
要匹配的值名称。名称使用 PropertyValueAliases.txt 中描述的“宽松匹配”进行比较。
返回相应的整数,或者如果给定名称与给定属性的任何值都不匹配,或者属性无效,则返回IntlChar::PROPERTY_INVALID_CODE
。
示例 #1 测试不同的属性
<?php
var_dump(IntlChar::getPropertyValueEnum(IntlChar::PROPERTY_BLOCK, 'greek') === IntlChar::BLOCK_CODE_GREEK);
var_dump(IntlChar::getPropertyValueEnum(IntlChar::PROPERTY_BIDI_CLASS, 'RIGHT_TO_LEFT') === IntlChar::CHAR_DIRECTION_RIGHT_TO_LEFT);
var_dump(IntlChar::getPropertyValueEnum(IntlChar::PROPERTY_BIDI_CLASS, 'some made-up string') === IntlChar::PROPERTY_INVALID_CODE);
var_dump(IntlChar::getPropertyValueEnum(123456789, 'RIGHT_TO_LEFT') === IntlChar::PROPERTY_INVALID_CODE);
?>
以上示例将输出
bool(true) bool(true) bool(true) bool(true)