[PHP-users 18054]Re: 配列にNULLしかない場合のエラー処理

Naofumi Kondoh nkondo @ techno-con.co.jp
2003年 9月 24日 (水) 15:39:31 JST


ソフト工房の近藤です。こんにちは。

本題ではないけど名前が出たので。。。。

kenbooit @ excite.co.jp wrote:

..... 略 .....
> 前にもdie()をソフト工房の近藤さんのページを見て知り、
> 同じように感動しました。

重松さんもフォローされているように、die() のような書き方は、
初心者向けセミナーの例題などで使ったものです。

DB接続のような重要な処理の時は、必ず正常終了したか
チェックしないと困りますよというような説明のところか
と思います。

実際のプログラムでは、重松さんのおっしゃるとおり、
ユーザーが見てわかりやすいと同時に、エラーリカバリーや
ファイルセーフになるような作りにします。

私が、実用的なプログラムで die() を使うのは、C言語の
assert の代わりにするような場合です。

例えば、ある重要な変数の値は、プログラムロジック等々で
絶対に 1 以上になると決まっているときに、重要な箇所で、
検証のために、
if ($hoge < 1) die("ASSERTION ERROR : ".__FILE__." Line=".__LINE__);
というような具合に使ってます。

こういう文を検証用に入れておくと、後で、誰かがプログラム
変更でうっかりしてバグを持ちこんでしまった場合に、ここで
引っかかって 表示が出て終了するので、最悪の事態は防げます。

============================================
ソフト工房 近藤直文  nkon @ shonan.ne.jp





PHP-users メーリングリストの案内