(PHP 7, PHP 8)
IntlChar::getPropertyName — Получает Unicode-имя свойства
$property
, int $type
= IntlChar::LONG_PROPERTY_NAME): string|falseМетод возвращает Unicode-имя свойства, как определяет файл базы данных Юникода — PropertyAliases.txt.
Кроме того, метод сопоставляет свойство IntlChar::PROPERTY_GENERAL_CATEGORY_MASK
с синтетическим именем "gcm" / "General_Category_Mask". Файл PropertyAliases.txt не содержит этих имён.
Метод дополняет метод IntlChar::getPropertyEnum().
property
Свойство Юникода
для поиска (см. константы семейства IntlChar::PROPERTY_*
).
Флаг IntlChar::PROPERTY_INVALID_CODE
лучше не использовать.
Кроме того, метод вернёт false
, если свойство property
не выходит
за пределы допустимого диапазона.
type
Селектор, который определяет, какое имя требуется получить. Метод вернёт false
, если селектор
не входит в допустимый диапазон.
Длинное имя есть у каждого значения. У большей части значений есть короткие имена, но не у каждого.
Юникод разрешает дополнительные имена; если значению присвоили короткое название,
метод вернёт значение IntlChar::LONG_PROPERTY_NAME
с добавлением 1, 2 и т. д.
Метод возвращает имена свойств или false
, если свойство property
тип имён type
выходят за пределы допустимого диапазона.
Если тип названия type
возвращает false
, все бо́льшие значения
типа названия type
также вернут false
, с одним исключением: если
для IntlChar::SHORT_PROPERTY_NAME
вернётся false
,
то IntlChar::LONG_PROPERTY_NAME
и выше всё ещё смогут вернуть значения,
которые будут отличаться от false
.
Пример #1 Тестирование различных свойств
<?php
var_dump(IntlChar::getPropertyName(IntlChar::PROPERTY_BIDI_CLASS));
var_dump(IntlChar::getPropertyName(IntlChar::PROPERTY_BIDI_CLASS, IntlChar::SHORT_PROPERTY_NAME));
var_dump(IntlChar::getPropertyName(IntlChar::PROPERTY_BIDI_CLASS, IntlChar::LONG_PROPERTY_NAME));
var_dump(IntlChar::getPropertyName(IntlChar::PROPERTY_BIDI_CLASS, IntlChar::LONG_PROPERTY_NAME + 1));
?>
Результат выполнения приведённого примера:
string(10) "Bidi_Class" string(2) "bc" string(10) "Bidi_Class" bool(false)