IntlChar::digit

(PHP 7, PHP 8)

IntlChar::digitコードポイントの10進の数値を、指定された基数で返す

説明

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

指定されたコードポイントの10進の数値を、指定された基数で返します。

基数が 2<=radix<=36 の範囲外であったり、 codepoint の値が指定された基数に対して有効な値でない場合、 false を返します。 次のいずれかが当てはまる場合、 有効な値であると見なされます。

  • 指定された文字が、10進数の値である場合。 これは、general category "Nd" (decimal digit numbers)、かつ Numeric_Type of Decimal である場合です。 この場合、値はその文字の10進の数値になります。
  • 指定された文字が、アルファベットの大文字 'A' から 'Z' までの範囲にある場合。 この場合、値は指定された文字を c とすると、c-'A'+10 になります。
  • 指定された文字が、アルファベットの小文字 'a' から 'z' までの範囲にある場合。 この場合、値は指定された文字を c とすると、c-'a'+10 になります。
  • ASCII の範囲 (0061..007A, 0041..005A) または全角の ASCII の範囲 (FF41..FF5A, FF21..FF3A) にあると認識できるアルファベットの場合。

パラメータ

codepoint

コードポイントを表す int 型の値 (例: U+2603 SNOWMAN を表す 0x2603)、あるいは UTF-8 文字列としてエンコードされた文字 (例: "\u{2603}")。

base

基数 (デフォルトは 10 です)

戻り値

文字で表現される数値を、指定された基数で返します。 指定された値が基数を超過していたり、 値が存在しない場合は false を返します。 失敗した場合は、null を返します。

警告

この関数は論理値 false を返す可能性がありますが、false として評価される値を返す可能性もあります。 詳細については 論理値の セクションを参照してください。この関数の返り値を調べるには ===演算子 を 使用してください。

例1 さまざまなコードポイントの例

<?php
var_dump
(IntlChar::digit("0"));
var_dump(IntlChar::digit("3"));
var_dump(IntlChar::digit("A"));
var_dump(IntlChar::digit("A"16));
?>

上の例の出力は以下となります。

int(0)
int(3)
bool(false)
int(10)

参考

関連キーワード:  基数, コード, ポイント, 数値, 文字, IntlChar, int, 指定, 範囲, digit