Логически операции в PHP
Нека разгледаме следния код:
<?php
$a = 1;
$b = 2;
if ($a == $b) {
var_dump(true);
} else {
var_dump(false);
}
?>
Както виждате, в този код се извършва
сравнение на променливите a и b
и, ако те са равни, в конзолата се извежда
true, а ако не са равни - тогава false.
Тук е време да ви разкрия нещо
неочевидно: всъщност конструкцията
if не е задължителна за сравнение
- самите оператори като ==, ===, !=, <, > и
други връщат като резултат или true,
или false.
Вижте пример:
<?php
var_dump(1 == 1); // ще изведе true
var_dump(1 == 2); // ще изведе false
?>
Въз основа на написаното, кодът от началото на урока може да се пренапише по-просто:
<?php
$a = 1;
$b = 2;
var_dump($a == $b);
?>
Може да не извеждате резултата веднага, а да го присвоите на някаква променлива:
<?php
$a = 1;
$b = 2;
$res = $a == $b;
var_dump($res);
?>
Нека са дадени следните променливи:
<?php
$a = 2 * (3 - 1);
$b = 6 - 2;
?>
Използвайки оператора ==, разберете дали
стойностите на тези променливи са равни или не.
Нека са дадени следните променливи:
<?php
$a = 5 * (7 - 4);
$b = 1 + 2 + 7;
?>
Използвайки оператора >, разберете дали
променливата $a е по-голяма от $b.
Нека са дадени следните променливи:
<?php
$a = 2 ** 4;
$b = 4 ** 2;
?>
Използвайки оператора !=, разберете дали
стойностите на тези променливи са различни или не.