12章エラー処理
二十日鼠と人間が練りに練った計画さえ、しばしばしくじることがある。
ロバート・バーンズ†1の詩集『To a Mouse』より
[†1] 訳注:ロバートバーンズ(1759-1796)はスコットランドの国民的詩人
プログラミングやソフトウェア開発に携わっている人なら、バグやデバッグのプロセスについてよく知っていると思います。そもそもコードを書くのと同じくらい、いやそれ以上にバグを突き止めるのに時間を費やしているかもしれません。これはソフトウェアの不運な定石であり、チームがどんなに努力して正しいソフトウェアを作ろうとも、特定し修正する必要のある不具合は避けられません。
幸運なことに、PHPはバグを見つけるのが比較的簡単です。この言語の寛容な性質が、バグを致命的な欠陥ではなく厄介なものにすることもよくあります。
以下のレシピでは、コード中のバグを特定し、それを処理するための最も簡単で迅速な方法を紹介します。また、第三者のAPIから不正なデータが出力されたり、システムの動作がおかしくなったりした場合に、コードからスローされる例外を処理する方法についても詳しく説明します。
レシピ12.1 パース時のエラーを特定し、修正する
問題
PHPコンパイラがアプリケーション内のスクリプトのパースに失敗した。問題を速やかに見つけて修正したい。
解決策
問題のあるファイルをテキストエディタで開き、構文エラーがないか、パーサによって呼び出された行を確認します。問題がすぐに特定できない場合は、問題を見つけるまでコードを1行ずつ逆にたどっていき、ファイル内で修正してください。
解説
PHPは比較的寛容な言語であり、不正確なスクリプトや問題のあるスクリプトであっても完了まで実行させようとすることがよくあります。しかし、多くの場合、パーサはコード行を適切に解釈できず、その代わりにエラーを返します。 ...
Get PHPクックブック ―モダンPHPによるWebアプリケーション実用レシピ集 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.