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 の場合は 1false の場合は "" 空文字に置き換わって出力されます。そのためここでは 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つのデータを比較する
  • > , >= , < , <= , == , != が存在する
  • 比較演算子の評価結果は論理型データ( truefalse )になる