PHP - BASIC - 3. PHPの演算子 - 6. 比較演算子

続いて比較演算子です。比較演算子は2つのデータの大小を比較する用途に使います。次のプログラム( ope10.php )を作成してみましょう。
<?php
$apple = 100;
$banana = 200;
$result = $apple > $banana;
var_dump($result); # => bool(false)
上記のプログラムを実行すると bool(false) という結果が出力されます。比較演算子 > による評価は必ず論理型になる点がポイントです。 $apple > $banana が評価されると条件は成立しないので論理型データ false となります。
また論理型のデータは echo 命令で出力すると true の場合は 1 に false の場合は "" 空文字に置き換わって出力されます。そのためここでは echo 命令でデータを出力せずに var_dump 関数でデータを出力しています。
先ほどのプログラム( ope10.php )を少し修正してみましょう。比較演算子を利用している部分を > から < に変更してみましょう。
<?php
$apple = 100;
$banana = 200;
$result = $apple < $banana;
var_dump($result); # => bool(true)
上記のプログラムを実行すると bool(true) という結果が出力されます。 $apple < $banana が評価されると条件は成立するので論理型データ true となります。値の大小比較には >= や <= を使うこともできます。この場合、以上(以下)といった比較になります。
もう一度プログラム( ope10.php )を少し修正してみましょう。比較演算子を利用している部分を < から == に変更してみましょう。
<?php
$apple = 100;
$banana = 200;
$result = $apple == $banana;
var_dump($result); # => bool(false)
上記のプログラムを実行すると bool(false) という結果が出力されます。 == 演算子は2つのデータが等しいかどうかを判定する演算子です。 $apple == $banana が評価されると条件は成立しないので論理型データ false となります。
また「等しくない」かどうか比較するときには != 演算子を利用できます。プログラム( ope10.php )を次のように修正してみましょう。
<?php
$apple = 100;
$banana = 200;
$result = $apple != $banana;
var_dump($result); # => bool(true)
上記のプログラムを実行すると bool(true) という結果が出力されます。 != 演算子は等しくないかどうかを比較する演算子です。 $apple != $banana が評価されると条件は成立しないので論理型データ true となります。
さいごに演算子の優先度についても復習しておきましょう。代入演算子 = を見つけたら、 = の後の部分( $apple != $banana )が先に処理されると考えてください。これは代入演算子 = に比べて比較演算子( > など)の方が処理の優先度が高いためです。
まとめ
- 比較演算子は2つのデータを比較する
>,>=,<,<=,==,!=が存在する- 比較演算子の評価結果は論理型データ(
true、false)になる