[PHP-users 16181]Re: case文での比較演算子について

A.K.I. aki @ tetsuneko.com
2003年 6月 24日 (火) 15:43:15 JST


>正しい動きをすると思い記述していたif文は、
>if ($x <= 20) {
>$kura_memori = 1;
>}
>です。
>私の考えが根本的に間違っているのでしょうか?

うーん、根本的に間違ってると言わざるを得ませんね。
概念的に間違ってる、というべきかなぁ。何か全てが違う気が。

case ($x){
は
「こっから$xの値で分岐するよ」という日本語に置き換えてみ
ます。

で、case xxx: の部分は「$xの値がxxxだったらここから処理する
よ」に置き換えてみます。

すると、if($x<=20)とcase ($x<=20):が「全く意味が違う」ことが
わかって頂けるのではないかと。

#念のためもうちょっと。

if($x<=20)の場合は「もし$xが20以下だったら」ですが、case ($x<=20)
の場合$xという値が、$x<=20という式を評価した結果の値(trueま
たはfalseになるはず)だったら、という意味になりますよね??

これは「型の問題」とかいうものとは全く異なるじゃなかろーかと。





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