For the record, the E_DEPRECATED error thrown on is_a() has been removed in 5.3.
Additionally E_USER_DEPRECATED has been conveniently added for user generated deprecation errors.
定義済み定数
以下の定数は、PHP コアに含まれており、常に利用可能です。
注意: 以下の定数をphp.iniで使用することができますが、 httpd.confのようなPHPの外部では、 代わりにビットマスク値を使用する必要があります。
| 値 | 定数 | 説明 | 注記 |
|---|---|---|---|
| 1 | E_ERROR (integer) | 重大な実行時エラー。これは、メモリ確保に関する問題のように復帰で きないエラーを示します。スクリプトの実行は中断されます。 | |
| 2 | E_WARNING (integer) | 実行時の警告 (致命的なエラーではない)。スクリプトの実行は中断さ れません。 | |
| 4 | E_PARSE (integer) | コンパイル時のパースエラー。パースエラーはパーサでのみ生成されま す。 | |
| 8 | E_NOTICE (integer) | 実行時の警告。エラーを発しうる状況に遭遇したことを示す。 ただし通常のスクリプト実行の場合にもこの警告を発することがありうる。 | |
| 16 | E_CORE_ERROR (integer) | PHPの初期始動時点での致命的なエラー。E_ERRORに 似ているがPHPのコアによって発行される点が違う。 | PHP 4 より |
| 32 | E_CORE_WARNING (integer) | (致命的ではない)警告。PHPの初期始動時に発生する。 E_WARNINGに似ているがPHPのコアによって発行される 点が違う。 | PHP 4 より |
| 64 | E_COMPILE_ERROR (integer) | コンパイル時の致命的なエラー。E_ERRORに 似ているがZendスクリプティングエンジンによって発行される点が違う。 | PHP 4 より |
| 128 | E_COMPILE_WARNING (integer) | コンパイル時の警告(致命的ではない)。E_WARNINGに 似ているがZendスクリプティングエンジンによって発行される点が違う。 | PHP 4 より |
| 256 | E_USER_ERROR (integer) | ユーザーによって発行されるエラーメッセージ。E_ERROR に似ているがPHPコード上でtrigger_error()関数を 使用した場合に発行される点が違う。 | PHP 4 より |
| 512 | E_USER_WARNING (integer) | ユーザーによって発行される警告メッセージ。E_WARNING に似ているがPHPコード上でtrigger_error()関数を 使用した場合に発行される点が違う。 | PHP 4 より |
| 1024 | E_USER_NOTICE (integer) | ユーザーによって発行される注意メッセージ。E_NOTICEに に似ているがPHPコード上でtrigger_error()関数を 使用した場合に発行される点が違う。 | PHP 4 より |
| 2048 | E_STRICT (integer) | 実行時の注意。コードの相互運用性や互換性を維持するために PHP がコードの変更を提案する。 | PHP 5 より |
| 4096 | E_RECOVERABLE_ERROR (integer) | キャッチできる致命的なエラー。危険なエラーが発生したが、 エンジンが不安定な状態になるほどではないことを表す。 ユーザ定義のハンドラでエラーがキャッチされなかった場合 (set_error_handler() も参照ください) は、 E_ERROR として異常終了する。 | PHP 5.2.0 より |
| 8192 | E_DEPRECATED (integer) | 実行時の注意。これを有効にすると、 将来のバージョンで動作しなくなるコードについての警告を受け取ることができる。 | PHP 5.3.0 より |
| 16384 | E_USER_DEPRECATED (integer) | ユーザ定義の警告メッセージ。これは E_DEPRECATED と同等だが、 PHP のコード上で関数 trigger_error() によって作成されるという点が異なる。 | PHP 5.3.0 より |
| 30719 | E_ALL (integer) | サポートされる全てのエラーと警告。PHP < 6 では E_STRICT レベルのエラーは除く。 | PHP 6 では 32767、 PHP 5.3.x では 30719、 PHP 5.2.x では 6143、 それより前のバージョンでは 2047 でした。 |
上記の値(数値も論理値も)はどのエラーをレポートするかを指定する ビットマスクを組み立てる。ビット演算子 を使用して値を組み合わせたり特定のエラータイプをマスクすることができる。 php.ini では'|', '~', '!', '^' and '&'のみが解釈されることに 注意すべきである。
定義済み定数
tim at petim dot com dot au
24-Jul-2008 10:33
24-Jul-2008 10:33
strrev xc.noxeh@ellij
04-Jun-2008 06:36
04-Jun-2008 06:36
In PHP 5.3 E_DEPRECATED will be added with value 8192.
Deprecated things like is_a() will throw E_DEPRECATED instead of E_STRICT.
We had our own error handler, and it caught 'Unknown' errors after upgrading to php 5.3 (nightly).
We found out it was 8192, an undocumented error.
After some searching we found out PHP 5.3 throws E_DEPRECATED errors.
