(PHP 7, PHP 8)
IntlChar::getPropertyValueName — Obtém o nome Unicode para um valor de propriedade
$property
, int $value
, int $type
= IntlChar::LONG_PROPERTY_NAME): string|falseRetorna o nome Unicode para um valor de propriedade fornecido, como especificado no arquivo de dados Unicode PropertyValueAliases.txt.
Nota:
Alguns nomes no PropertyValueAliases.txt somente podem ser obtidos usando-se
IntlChar::PROPERTY_GENERAL_CATEGORY_MASK
, e nãoIntlChar::PROPERTY_GENERAL_CATEGORY
. Estes incluem:
- "C" / "Other"
- "L" / "Letter"
- "LC" / "Cased_Letter"
- "M" / "Mark"
- "N" / "Number"
- "P" / "Punctuation"
- "S" / "Symbol"
- "Z" / "Separator"
property
A propriedade Unicode a ser pesquisada (consulte as constantes IntlChar::PROPERTY_*
).
Se estiver fora do intervalo ou se este método não funcionar com o valor fornecido, false
é retornado.
value
Seletor para um valor para a propriedade fornecida. Se fora dos limites, false
é retornado.
Em geral, nomes válidos variam de 0
até um máximo. Existem exceções:
IntlChar::PROPERTY_BLOCK
começam no valor diferente de zero IntlChar::BLOCK_CODE_BASIC_LATIN
IntlChar::PROPERTY_CANONICAL_COMBINING_CLASS
não são contíguos e variam de 0 a 240.
type
Seletor para o nome a ser obtido. Se estiver fora dos limites, false
é retornado.
Todos os valores têm um nome longo. A maioria tem um nome curto, mas alguns não têm. Unicode permite nomes adicionais;
se presentes, estes serão retornados adicionando-se 1, 2, etc. a IntlChar::LONG_PROPERTY_NAME
.
Retorna o nome ou false
se property
ou type
estiverem fora de seus intervalos. Retorna null
em caso de falha.
Se um type
retonar false
, todos os valores maiores de type
retornarão false
, com uma exceção: se false
for retornado para IntlChar::SHORT_PROPERTY_NAME
,
então IntlChar::LONG_PROPERTY_NAME
(e acima) podem ainda retornar valor não-false
.
Exemplo #1 Testando diferentes propriedades
<?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));
?>
O exemplo acima produzirá:
string(16) "Greek_And_Coptic" string(5) "Greek" string(16) "Greek_And_Coptic" bool(false)