IntlChar::enumCharNames

(PHP 7, PHP 8)

IntlChar::enumCharNamesEnumera todos os caracteres Unicode atribuídos dentro de um intervalo

Descrição

public static IntlChar::enumCharNames(
    int|string $start,
    int|string $end,
    callable $callback,
    int $type = IntlChar::UNICODE_CHAR_NAME
): bool

Enumera todos os caracteres Unicode atribuídos entre o início e os pontos de código limite (início inclusive, pontos de código exclusive) e chama uma função para cada, passando o valor de ponto de código e o nome do caractere.

Para nomes Unicode 1.0, são enumerados somente os que são diferentes dos nomes modernos.

Parâmetros

start

O primeiro ponto de código no intervalo de enumeração.

end

Um a mais que o último ponto de código no intervalo da enumeração (o primeiro depois do intervalo).

callback

A função que deve ser chamada para cada nome de caractere. Os três argumentos a seguir serão passados na função:

  • int $codepoint - O valor numérico do ponto de código
  • int $nameChoice - O mesmo valor do parâmetro type abaixo
  • string $name - O nome do caractere
type

Seletor para o tipo de nomes e enumerar. Pode ser uma destas constantes:

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

Registro de Alterações

Versão Descrição
8.3.0 Este método agora retorna false em caso de falha; anteriormente retornava null.

Exemplos

Example #1 Enumerando em uma faixa de pontos de código de exemplo

<?php
IntlChar::enumCharNames(0x2600, 0x2610, function($codepoint, $nameChoice, $name) {
    printf("U+%04x %s\n", $codepoint, $name);
});
?>

O exemplo acima produzirá:

U+2600 BLACK SUN WITH RAYS
U+2601 CLOUD
U+2602 UMBRELLA
U+2603 SNOWMAN
U+2604 COMET
U+2605 BLACK STAR
U+2606 WHITE STAR
U+2607 LIGHTNING
U+2608 THUNDERSTORM
U+2609 SUN
U+260a ASCENDING NODE
U+260b DESCENDING NODE
U+260c CONJUNCTION
U+260d OPPOSITION
U+260e BLACK TELEPHONE
U+260f WHITE TELEPHONE

Veja Também