CascadiaPHP 2024


(PHP 7, PHP 8)

IntlChar::digitGet the decimal digit value of a code point for a given radix


public static IntlChar::digit(int|string $codepoint, int $base = 10): int|false|null

Returns the decimal digit value of the code point in the specified radix.

If the radix is not in the range 2<=radix<=36 or if the value of codepoint is not a valid digit in the specified radix, false is returned. A character is a valid digit if at least one of the following is true:

  • The character has a decimal digit value. Such characters have the general category "Nd" (decimal digit numbers) and a Numeric_Type of Decimal. In this case the value is the character's decimal digit value.
  • The character is one of the uppercase Latin letters 'A' through 'Z'. In this case the value is c-'A'+10.
  • The character is one of the lowercase Latin letters 'a' through 'z'. In this case the value is ch-'a'+10.
  • Latin letters from both the ASCII range (0061..007A, 0041..005A) as well as from the Fullwidth ASCII range (FF41..FF5A, FF21..FF3A) are recognized.



The int codepoint value (e.g. 0x2603 for U+2603 SNOWMAN), or the character encoded as a UTF-8 string (e.g. "\u{2603}")


The radix (defaults to 10).

Return Values

Returns the numeric value represented by the character in the specified radix, or false if there is no value or if the value exceeds the radix. Returns null on failure.


This function may return Boolean false, but may also return a non-Boolean value which evaluates to false. Please read the section on Booleans for more information. Use the === operator for testing the return value of this function.


Example #1 Testing different code points

var_dump(IntlChar::digit("A", 16));

The above example will output:


See Also

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top