回答編集履歴

1

エラー対応

2021/07/27 07:34

投稿

yambejp
yambejp

スコア116724

test CHANGED
@@ -3,3 +3,57 @@
3
3
  別途エラーページを用意しているのなら
4
4
 
5
5
  headerでLocationを指定して飛ばしてしまえばよいのでは?
6
+
7
+
8
+
9
+ ```PHP
10
+
11
+ set_error_handler('myErrorHandler');
12
+
13
+ function myErrorHandler($errno, $errstr, $errfile, $errline){
14
+
15
+ switch($errno) {
16
+
17
+ case E_NOTICE:
18
+
19
+ throw new exception("NOTICE");
20
+
21
+ break;
22
+
23
+ case E_WARNING:
24
+
25
+ throw new exception("WARNING");
26
+
27
+ break;
28
+
29
+ default:
30
+
31
+ throw new exception("ERR");
32
+
33
+ }
34
+
35
+ return true;
36
+
37
+ }
38
+
39
+ try{
40
+
41
+ print $a;//未定義の変数を参照
42
+
43
+ }catch(exception $e){
44
+
45
+ print $e->getMessage();
46
+
47
+ }
48
+
49
+ try{
50
+
51
+ print 1/0;//ゼロデブ
52
+
53
+ }catch(exception $e){
54
+
55
+ print $e->getMessage();
56
+
57
+ }
58
+
59
+ ```