IntlChar::getPropertyValueName

(PHP 7, PHP 8)

IntlChar::getPropertyValueName获取 Unicode 属性值的名称

说明

public static IntlChar::getPropertyValueName(int $property, int $value, int $type = IntlChar::LONG_PROPERTY_NAME): string|false

返回给定属性值的 Unicode 名称,如 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_* 常量)。

如果超出范围,或者此方法无法处理给定的值,则返回 false

value

给定属性值的选取器。如果超出范围,则返回 false

通常,有效值范围从 0 到某个最大值。有几个例外

type

选择要获取的名称。如果超出范围,则返回 false

所有值都有一个长名称。大多数值都有一个短名称,但有些值没有。Unicode 允许添加其他名称;如果存在,则通过将 1、2 等添加到 IntlChar::LONG_PROPERTY_NAME 来返回这些名称。

返回值

返回名称,或者如果 propertytype 超出范围,则返回 false。如果失败,则返回 null

如果给定的 type 返回 false,则所有大于 type 的值都将返回 false,只有一个例外:如果 falseIntlChar::SHORT_PROPERTY_NAME 返回,则 IntlChar::LONG_PROPERTY_NAME(和更高版本)可能仍然返回非 false 值。

范例

范例 #1 测试不同的属性

<?php
var_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)
添加说明

用户贡献的注释

此页面没有用户贡献的注释。
To Top