[PHP-users 30020] Re: プログラムの作りこみ

goungoun gounx2 @ gmail.com
2006年 8月 11日 (金) 12:39:30 JST


こんにちは

> 原因は未定義の変数を使用したということで理解はしたのですが、
> 通常、プログラミングを行う際、 Notice メッセージさえ出ないレベルまで
> 作りこむほうがいいのでしょうか?
> 下記のように変更すると Notice が出なくはなりましたが、コードが増えただ
> けであんまり意味が無いような気がします。

意味が無いとは思いませんが・・・

> 
> if( !isset($_GET['check']) ){
>   print '不正な値';
> }elseif( $_GET['check'] == 'ON' ){
>   print 'オン';
> }elseif( $_GET['check'] == 'OFF' ){
>   print 'オフ';
> }else{
>   print '不正な値';
> }
> 

例えば、元ページのHTMLの記述をミスってて
<input name='chek' ... />
なんてやっていると、
最初のif文で'不正な値'になります。

<input name='check' value='ONF' ... />
なんてやっていると、
elseで'不正な値'になります。

これを無意味な処理といってしまうか、
意味があると思うかは人それぞれだと思いますが、
私にとっては意味があることです。

あと、わたしは変数名をtypoすることがときどきあるので
未定義(Notice)を隠してしまうと
$communication = $communcation + 1;
なんてやってしまって、あれ+1されないぞ?
期待通りに動かない。。。
と悩んでしまうことがあります。

あと、わたしは型宣言する言語を最初に覚えたので
数字と文字を曖昧に使えたり、未定義で使えたり
というのは違和感を覚えてしまうのです。
(前者はかなり馴染めてきましたが、後者は未だに
気持ちわるさを感じてしまうんですよね。自分が
ある処理において、ある変数が未定義であることを
承知でプログラムしているならいいですけど、大抵の
場合は自分が承知していない変数の使い方を未定義
と警告してくれるのですから、私にとってはとても
ありがたいです。ちょっと小うるさいけどNoticeさん
ありがとうって感じです)

ですから私はNoticeを有効にしておく派です。

ps.

> 作る人のポリシー次第のような気がしますが

これもまた真だと思います。

-- 
goungoun <gounx2 @ gmail.com>
http://goungoun.dip.jp/app/



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