Операторы сравнения в PHP

Материал из Викиреальностя
Перейти к: навигация, поиск

Операторы сравнения — операторы PHP, необходимые для сравнения левого значения с правым.

Содержание

[править] Описание

Операторы сравнения имеют отличительную особенность: независимо от типов своих аргументов они всегда возвращают только булеановское значение, то есть false или true.

В PHP нельзя сравнивать массивы и объекты. Возможно сравнение только скалярных величин. Если вы всё таки произведёте сравнение двух массивов, то оба будут заменены словом array, и таким образом условие будет считаться выполненным, независимо от значения массивов.

[править] Какие бывают операторы сравнения

Пример Название Результат
$a == $b Равно TRUE если $a равно $b.
$a === $b Тождественно равно TRUE если $a равно $b и имеет тот же тип. (Добавлено в PHP 4)
$a != $b Не равно TRUE если $a не равно $b.
$a <> $b Не равно TRUE если $a не равно $b.
$a !== $b Тождественно не равно TRUE если $a не равно $b или в случае, если они разных типов (Добавлено в PHP 4)
$a < $b Меньше TRUE если $a строго меньше $b.
$a > $b Больше TRUE если $a строго больше $b.
$a <= $b Меньше или равно TRUE если $a is меньше или равно $b.
$a >= $b Больше или равно TRUE если $a больше или равно $b.

[править] Примеры

<?php 
  var_dump(0 == "a"); // 0 == 0 -> true 
  var_dump("1" == "01"); // 1 == 1 -> true 
    
  switch ("a") { 
  case 0: 
      echo "0"; 
      break; 
  case "a": // Эта ветка никогда не будет достигнута, так как "a" уже сопоставленно с 0 
      echo "a"; 
      break; 
  } 
?>

Или вот ещё:

<?php
// Пример использования тернарного оператора
$action = (empty($_POST['action'])) ? 'default' : $_POST['action'];
// Приведенный выше код аналогичен следующему блоку с использованием if/else
if (empty($_POST['action'])) {
    $action = 'default';
} else {
    $action = $_POST['action'];
}
?>

[править] Ссылки