[PHP-users 18012]Re: 配列にNULLしかない場合のエラー処理
Osamu Shigematsu
m5issige @ mr.hitachi-medical.co.jp
2003年 9月 22日 (月) 10:35:03 JST
重松です。こんにちは。
> 実は質問した後にimplodeでできるじゃん、ってすぐ気付いたのですが、
> それよりもexit()の使い方に感動しました。
> (マニュアル見ていれば当たり前なんでしょうが。)
>
> if ( ! strlen( implode( '', $a ) ) ) exit( 'error' );
>
> いっつも下のようにして書いてました。
> 感動!一行でかけちゃうんですね。
>
> if ( ! strlen( implode( '', $a ) ) ) {
> echo( 'error' );
> exit;
> }
>
> 前にもdie()をソフト工房の近藤さんのページを見て知り、
> 同じように感動しました。
というか、exit() だの、die() などでエラーを処理するのは、「サンプルスク
リプト」だからであり、仕事として収めるものだとか、要するに、実際にネット
に詳しくないような人が使うものを作る場合、そんなヘボイ処理では、
「なんかエラーとかいって止まりました」
といわれて、サポートが大変になって仕方ないのでは?
この ML にも時々出没しますが、ちゃんとエラーが表示されていても、英語だと
読まないで、「うまくいきません」的な痛い人もたまにいるのに、単なるエラー
だと、言わずもがなです。合掌。
PHP 4 では例外が使えないので、代わりに trigger_error() を使って、ユーザ
定義エラーを発生させてエラーハンドラで一括処理するのがスマートでしょう。
# PEAR (http://pear.php.net) を使うのも手です。
一行で書くとか、そういう「使う人に見えない」ことに気を配るよりも、もっと
別のことが大切では?
--
Osamu Shigematsu <m5issige @ mr.hitachi-medical.co.jp>
PHP-users メーリングリストの案内