- ベストアンサー
判定の仕方
みなさんifなどの false(FALSE) 0 NULL "" などをtureとするとき、判定分をどう書きますか? 私はreturn値を明示するために if($val === false) //true if($val === 0) //true if($val === NULL) //true if($val === "") //true とします。 スマートなのは if(!$val) //true なんですけど、複合型を返す関数の判定は気持ち悪くて使ってないです。 複合型の判定は if(empty($val)) //true としてます。 みなさんはどっちをつかいますか? また、 if($val == false) //true と書いたりしますか? C育ちの私にとってはとても気持ち悪くて絶対に書かないだろう判定の仕方なんですけど、なにかメリットなどがあったら教えてください。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
BASIC→C→アセンブラ→C++と言う昔の王道パターンで学んできましたが、 郷にいりては郷に従えという感じで、普通に使用しています。 0と空文字を厳密に区別する必要がある時だけ「===」を使っています。 と言うかこれを気持ち悪いと言うなら、 型宣言できないphpとは相容れないと思うのであきらめてます。 (perlとかに手を染めるとあきらめがついたりもします(^^;)
その他の回答 (3)
- the845t
- ベストアンサー率33% (246/743)
はい。Perl育ちですw if(!$val) を普通に使ってます。 Perl育ちの私には、 foreach (@list){ print $_; } この簡略ができないのが何より苦痛だったりしますw
- moon_night
- ベストアンサー率32% (598/1831)
怠け者なので if(!$val) を使用しています。 特に不具合が起きたことはないです。 Cもやったことがないので別に気持ち悪くありません。 自分の中では普通と思っています。
- ketaimania
- ベストアンサー率39% (9/23)
自分的には、型判定までするのが普通 決まり文句は別だけど。 > if(empty($val)) //true 大丈夫? > C育ち どんなC?
補足
回答ありがとうございます。 >> if(empty($val)) //true >大丈夫? こんな関数を作ってしまったときにつかいます。 1:正常終了、情報あり 0:正常終了、情報なし false:異常終了 if(empty($val)) //トラブル発生 こんな関数になること自体設計ミスなんですけど、一応こんな使い方をします。 >> C育ち >どんなC? Linux C,C++です。