(PHP 7, PHP 8)
IntlChar::getPropertyValueEnum — 取得指定值名稱的屬性值
根據 Unicode 資料庫檔案 PropertyValueAliases.txt 的規定,傳回指定值名稱的屬性值整數。可辨識簡短、完整和其他任何變體名稱。
注意事項:
PropertyValueAliases.txt 中的某些名稱只能以
IntlChar::PROPERTY_GENERAL_CATEGORY_MASK
辨識,而不能以IntlChar::PROPERTY_GENERAL_CATEGORY
辨識。這些名稱包括
- 「C」/「其他」
- 「L」/「字母」
- 「LC」/「大小寫字母」
- 「M」/「標記」
- 「N」/「數字」
- 「P」/「標點符號」
- 「S」/「符號」
- 「Z」/「分隔符號」
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)