IntlChar::getPropertyName
(PHP 7, PHP 8)
IntlChar::getPropertyName — プロパティに対応する、Unicode での名前を取得する
説明
$property
, int $type
= IntlChar::LONG_PROPERTY_NAME): string|false指定されたプロパティに対応する、Unicode の名前を返します。 Unicode のデータベースファイル PropertyAliases.txt に存在するものです。
さらに、
この関数はプロパティ
IntlChar::PROPERTY_GENERAL_CATEGORY_MASK
を仮想の名前 "gcm" / "General_Category_Mask" に対応させています。
これらの名前は、PropertyAliases.txt には存在しません。
この関数は、 IntlChar::getPropertyEnum() を補完するものです。
パラメータ
property
-
調べたい Unicode プロパティ (定数
IntlChar::PROPERTY_*
を参照ください)。IntlChar::PROPERTY_INVALID_CODE
は使ってはいけません。 また、property
が範囲外の値の場合false
を返します。 type
-
どの名前を取得するかを選択します。 範囲外の値が指定された場合、
false
を返します。全てのプロパティには長い名前 (long name) が存在します。 殆どのプロパティには短縮名 (short name) が存在しますが、 ないものもあります。 さらに、Unicode はこれら以外の追加の名前も許容しています。つまり、 追加の名前が存在する場合、
IntlChar::LONG_PROPERTY_NAME
に追加される形で返されます。
戻り値
名前を返します。
property
や
type
が範囲外の場合は、
false
を返します。
指定された 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)