定義済み定数
以下の定数は、PHP コアに含まれており、常に利用可能です。
以下の定数 (対応する数値またはそのシンボル名) は、
どのエラーを報告するかを指定するビットマスクとして使用します。
ビット演算子
を使用して、値を組み合わせたり特定のエラータイプを除外したりできます。
ヒント
php.ini では、対応する生の数値の代わりに定数名を使うことができます。
ただし、php.ini では
|
、
~
、
^
、
!
、
&
の演算子のみが解釈されます。
警告
PHP の外部では、シンボル名を使うことはできません。
例えば、httpd.conf の中では計算済みのビットマスク値を代わりに使わなければなりません。
-
E_ERROR
(int)
-
重大な実行時エラー。
これは、メモリ確保の問題といった復帰できないエラーを表します。
スクリプトの実行は中断されます。
定数の値:
1
-
E_WARNING
(int)
-
実行時の警告 (致命的でないエラー)。
スクリプトの実行は中断されません。
定数の値:
2
-
E_PARSE
(int)
-
コンパイル時のパースエラー。
パースエラーはパーサでのみ生成されます。
定数の値:
4
-
E_NOTICE
(int)
-
実行時の注意。
エラーを示しているかもしれない何かに遭遇したことを表します。
ただし、スクリプトを問題なく実行しているときに起こることもあります。
定数の値:
8
-
E_CORE_ERROR
(int)
-
PHP の初期始動時点で発生した致命的なエラー。
E_ERROR
に似ていますが、
PHP のコアによって生成される点が異なります。
定数の値:16
-
E_CORE_WARNING
(int)
-
PHP の初期始動時点で発生した (致命的でない) 警告。
E_WARNING
に似ていますが、
PHP のコアによって生成される点が異なります。
定数の値:32
-
E_COMPILE_ERROR
(int)
-
コンパイル時の致命的なエラー。
E_ERROR
に似ていますが、
Zend スクリプティングエンジンによって生成される点が異なります。
定数の値:64
-
E_COMPILE_WARNING
(int)
-
コンパイル時の (致命的でない) 警告。
E_WARNING
に似ていますが、
Zend スクリプティングエンジンによって生成される点が異なります。
定数の値:128
-
E_DEPRECATED
(int)
-
実行時の非推奨の注意。
これを有効にすると、将来のバージョンで
動作しなくなるコードについての警告を受け取ることができます。
定数の値:
8192
-
E_USER_ERROR
(int)
-
ユーザーによって生成されるエラーメッセージ。
E_ERROR
に似ていますが、
trigger_error 関数を用いて PHP コード上で
生成される点が異なります。
定数の値:256
警告
この定数を trigger_error と使うのは
PHP 8.4.0 で非推奨となりました。
代わりに、Exception を throw
するか、
exit を呼ぶことが推奨されます。
-
E_USER_WARNING
(int)
-
ユーザーによって生成される警告メッセージ。
E_WARNING
に似ていますが、
trigger_error 関数を用いて PHP コード上で
生成される点が異なります。
定数の値:512
-
E_USER_NOTICE
(int)
-
ユーザーによって生成される注意メッセージ。
E_NOTICE
に似ていますが、
trigger_error 関数を用いて PHP コード上で
生成される点が異なります。
定数の値:1024
-
E_USER_DEPRECATED
(int)
-
ユーザーによって生成される非推奨メッセージ。
E_DEPRECATED
に似ていますが、
trigger_error 関数を用いて PHP コード上で
生成される点が異なります。
定数の値:16384
-
E_STRICT
(int)
-
PHP が実行時に発行する提案。
コードの前方互換性を担保するために、実行中のコードについて改善が提案されます。
定数の値:
2048
警告
このエラーレベルは使われておらず、
PHP 8.4.0 で非推奨となりました。
-
E_RECOVERABLE_ERROR
(int)
-
キャッチできる致命的なエラーに相当する従来のエンジン「例外」(訳注: この文脈での括弧付きの「例外」は、Error が登場するより前に用いられていた例外の「ような」仕組みを指したものです)。
Error に似ていますが、
ユーザー定義のエラーハンドラー (set_error_handler を参照のこと) によってキャッチしなければなりません。
キャッチされなかった場合、
E_ERROR
と同様にスクリプトの実行を中断します。
定数の値:4096
注意:
このエラーレベルは実質的に使われていません。
唯一発生しうるのは、object を bool として解釈するのに失敗したときだけです。
これは、内部的なオブジェクトでしか起こりえません。
PHP 8.4.0 より前のバージョンにおける最もよくある例としては、
GMP インスタンスを条件式で使ったときです。
-
E_ALL
(int)
-
すべてのエラー、警告、注意を含んだビットマスク。
定数の値:
32767