Операторы сравнения, как это видно из их названия, позволяют
сравнивать между собой два значения. Также вам возможно будет
интересно ознакомиться с разделом Сравнение типов,
в котором приведено большое количество соответствующих примеров.
Таблица 15-4. Операторы сравнения
Пример | Название | Результат |
---|
$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. |
В случае, если вы сравниваете целое со строкой, строка будет
преобразована к числу.
В случае, если вы сравниваете две числовые строки, они сравниваются
как целые числа. Эти правила также распространяются на оператор
switch.
<?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']; } ?>
|
Выражение
(expr1) ? (expr2) : (expr3)
интерпретируется как
expr2, если
expr1 вычисляется в
TRUE, или как
expr3 если
expr1 вычисляется в
FALSE.
Также ознакомьтесь с описаниями функций strcasecmp(),
strcmp(),
и разделом документации
Типы и Операторы, работающие с массивами.