2015年9月10日

PHP if構文その3 〜比較演算子の基礎〜

«
»

Pocket

今回はif文のカッコ()の中に書く比較演算子というもの
について書きたいと思います。
 
まずはサンプルプログラムでどれが比較演算子なのかを
見てみましょう。
 


<?php
$box = 1;
if ($box == 1) { // この == が比較演算子
    echo "number is 1.";
} 

 
比較演算子はこの「==」の部分になります。
「=」ではなくて、「==」でなければなりません
 
「=」は $box = 1; の様に変数boxに1を格納する、という意味で、
「==」は$box == 1 の様に変数boxの中身が1かどうか比較するという
意味になります。
 
具体的なプログラムで違いを見ておきましょう。
 


<?php
$box = 3; // 3に変更しました
if ($box = 1) { // 「=」に変更しました。
    echo "number is 1."; 
} 

 
このプログラムではboxに3を格納したので、
number is 1.は表示されないはずです。

実行結果

スクリーンショット 2015-09-10 8.29.43
 
条件に合致したとみなされ、number is 1.が表示されました

解説

if ($box = 1) の部分が「==」ではなく、「=」になっているため
正しく比較されずに、条件に合致したとみなされてしまいました。

比較演算子の一覧(一部)

スクリーンショット 2015-09-10 8.21.42
 
これまで「==」について説明してきましたが、
以上、以下、より大きい、より小さい、・・・じゃない
などいくつかの比較演算子が存在します。
 
特に否定を表す書き方(・・・でない場合という比較)はPHPでは2種類
書き方があります。
 
また、一般的にプログラミング言語では「!」は「否定」を表すことが多いです。
他の言語を勉強するときにも覚えておくとスムーズでしょう。
 
実は比較演算子には「==」の他に「===」があるのですがそれはまた今度に。

【関連する記事】