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

質問編集履歴

1

誤字修正

2021/06/30 01:55

投稿

pegy
pegy

スコア245

title CHANGED
File without changes
body CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  1. サブクラス`pdo_query`において、発生した例外を親クラスのcatchにthrowしたいのですが、`throw $e;// 外側のTryブロックに対してスロー こちら`で投げたいのですが、こちらの方法がわからずにご質問させていただきました。
4
4
 
5
- 2.この挙動をに確認するために、例えばmain.phpをわざと存在しない絡むから取得するような`$sql = "SELECT nill_column FROM test_table";`のように変えた上で、親クラスの`$e->getMessage()`をコメントアウトなどしてみたのですが、このコードが存在してもしなくてもブラウザ上は`Warning: PDO::query(): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'aa' in 'field list' in /Applications/MAMP/htdocs/textile/dist/51_class.php on line 38`と出力されます。
5
+ 2.この挙動をに確認するために、例えばmain.phpをわざと存在しないカラムから取得するような`$sql = "SELECT nill_column FROM test_table";`のように変えた上で、親クラスの`$e->getMessage()`をコメントアウトなどしてみたのですが、このコードが存在してもしなくてもブラウザ上は`Warning: PDO::query(): SQLSTATE[42S22]: Column not found: 1054 Unknown column 'aa' in 'field list' in /Applications/MAMP/htdocs/textile/dist/51_class.php on line 38`と出力されます。
6
6
  ??`$e->getMessage()`がないのにエラーメッセージが出力されてしまっているので、throwではなく何に基づいて出力されているメッセージなのか、ひいては上記の#1についてもどのように挙動を確認すればいいのか混乱しております。
7
7
 
8
8
  このブラウザに出力されるエラーメッセージは例外の`$e->getMessage()`によるものでなければどこから出力されているのでしょうか?また、`$e->getMessage()`を正しく出力させるためにはどのようにしたら良いのでしょうか?