PHPで定義されているエラー定数(int値)からエラー定数の文字列を返すコードです。
PHPのライブラリで定義されている情報だけで、キーが「エラー定数のint値 」値が「エラー文字列」となる連想配列を生成しています。
// 定義済みの定数を取得
$allConstants = get_defined_constants(true);
// "Core"カテゴリに入っていて"E_"から始まる定数のみ取得
$errorConstants = array_filter(
$allConstants["Core"],
fn($key) => strncmp($key, "E_", 2) === 0,
ARRAY_FILTER_USE_KEY);
// エラー定数のint値 -> エラー文字列になるように連想配列を逆転
$errorCodeToString = array_flip($errorConstants);
// 使い方の例
echo $errorCodeToString[E_COMPILE_ERROR];
コメント