teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

2015/02/05 03:30

投稿

hogehogehoge
hogehogehoge

スコア165

answer CHANGED
@@ -3,26 +3,22 @@
3
3
  宣言されていない変数を使用しようとすると、E_NOTICEを投じてくれます。
4
4
  またE_STRICTエラーはそれらの通知や、どうやってコードを最適化するかのヒントも与えてくれますよ。
5
5
 
6
- ```lang-<ここに言語を入力>
7
6
  error_reporting(E_STRICT);
8
- ```
9
7
 
10
- もしあなたが宣言されていない変数に遭遇したとき、通知を出力するのではなくスクリプトを終了させたいのだとします。
8
+ もしあなたが宣言されていない変数に遭遇したとき、通知を出力するのではなくスクリプトを終了させたいのだとします。そんな場合はカスタムエラーハンドラーを構築することができますよ。
11
- そんな場合はカスタムエラーハンドラーを構築することができますよ。
12
9
 
13
10
  ただ「定義されていない変数」との通知を扱う例は、デフォルトのPHPエラーハンドラーに他のすべてを送ります。
14
11
 
15
- ```lang-<ここに言語を入力>
16
12
  <?php
17
13
 
18
14
  error_reporting(E_STRICT);
19
15
 
20
16
  function myErrorHandler($errno, $errstr, $errfile, $errline) {
21
- if (!(error_reporting() & $errno)) {
17
+ if (!(error_reporting() & $errno)) {
22
- echo "カスタムエラーです。";
18
+ echo "カスタムエラーです。";
23
- // error_reporting 設定に含まれていないエラーコードです
19
+ // error_reporting 設定に含まれていないエラーコードです
24
- }
20
+ }
25
- return;
21
+ return;
26
22
  }
27
23
 
28
24
  $old_error_handler = set_error_handler("myErrorHandler");
@@ -31,5 +27,4 @@
31
27
 
32
28
  xxxx(); // スタンダードPHPエラーを投げる
33
29
 
34
- ?>
30
+ ?>
35
- ```