代
<p class="sycode"> <? php /* 开启php.ini中的display_errors指令,只有该指令开启如果有错误报告才能输出 */ ini_set ( ' display_errors ' , 1 ); /* 通过error_reporting()函数设置在本脚本中,输出所有级别的错误报告 */ error_reporting ( E_ALL ); /* “注意(notice)”的报告,不会阻止脚本的执行,并且可能不一定是一个问题 */ getType ( $var ); // 调用函数时提供的参数变量没有在之前声明 /* “警告(warning)”的报告,指示一个问题,但是不会阻止脚本的执行 */ getType (); // 调用函数时没有提供必要的参数 /* “错误(error)”的报告,它会终止程序,脚本不会再向下执行 */ get_Type(); // 调用一个没有被定义的函数 ?> </p>
説明: 1.error_reporting () PHP のエラーレベルを設定し、現在のレベルに戻ります。スコープは現在のページです
2.php.ini の Display_errors ディレクティブを開いて、エラーレポートがある場合に出力を開く命令のみ
语法
error_reporting(report_level)
指定されていない、現在のエラーレベルが返されます。以下は、いくつかの考えられる値のレベルです:
1 | E_ERROR | 致命的な実行時エラー。回復できないエラー。スクリプトの実行が停止されました |
2 | E_WARNING | 致命的ではない実行時エラー。スクリプトの実行は停止されません |
4 | E_PARSE | コンパイル時の解析エラー。解析エラーは、パーサー |
8 | E_NOTICE | 実行時通知によってのみ生成される必要があります。スクリプトでエラーの可能性のあるものが見つかりましたが、スクリプトを通常に実行しているときにも発生する可能性があります |
16 | E_CORE_ERROR | PHP 起動時の致命的なエラー。これは、PHP コアの E_ERROR のようなものです |
32 | E_CORE_WARNING | PHP 起動時の致命的ではないエラー。これは、PHP コアの E_WARNING のようなものです |
64 | E_COMPILE_ERROR | 致命的なコンパイル時エラー。これは、Zend Scripting Engine によって生成される E_ERROR のようなものです |
128 | E_COMPILE_WARNING | 致命的ではないコンパイル時エラーです。これは、Zend Scripting Engine によって生成される E_WARNING のようなものです |
256 | E_USER_ERROR | 致命的なユーザー生成エラーです。これは、PHP 関数 Trigger_error() を使用してプログラマーによって設定される E_ERROR に似ています。これは、PHP 関数trigger_error() |
1024 | E_USER_NOTICE | ユーザー生成の通知を使用してプログラマによって設定される E_WARNING に似ています。これは、PHP 関数trigger_error() |
2048 | E_STRICT | 実行時通知を使用してプログラマによって設定される E_NOTICE に似ています。コードの相互運用性と互換性を高めるために、PHP はコードへの変更を提案します |
4096 | E_RECOVERABLE_ERROR | キャッチ可能な致命的なエラー。これは E_ERROR に似ていますが、ユーザー定義のハンドルによってキャッチできます (set_error_handler() も参照) |
8191 | E_ALL | レベル E_STRICT を除くすべてのエラーと警告 (E_STRICT は PHP 6.0 以降 E_ALL の一部になります) ) |
例 | 上記のオプションは任意の数で「または」を使用して (OR または | で) 接続できるため、エラーのレベルを報告するためにすべてが必要になります。たとえば、ユーザー定義のエラーと警告、特定の操作の実装をオフにして、元のエラー レベルに戻す次のコード: <p class="sycode"> <pre class="sycode" name="code"> <p class="sycode"> <? php // 禁用错误报告 error_reporting ( 0 ); // 报告运行时错误 error_reporting ( E_ERROR | E_WARNING | E_PARSE ); // 报告所有错误 error_reporting ( E_ALL ); ?> </p> ログイン後にコピー |