Відмінності між версіями «Логічні оператори PHP»
Bobchik (обговорення • внесок) |
|||
(не показані 5 проміжних версій 2 учасників) | |||
Рядок 1: | Рядок 1: | ||
− | + | Логічні оператори призначені виключно для роботи з логічними виразами і повертають '''false або true.''' | |
− | + | '''Наведемо таблицю логічних операторів PHP:''' | |
+ | <TABLE border=1 cellpadding="3" cellspacing="1" align=center bgcolor="#000066"> | ||
+ | |||
+ | <TR bgcolor="#FFFFFF" class="mtx4"> | ||
+ | <TH>Приклад</TH> | ||
+ | <TH>Назва</TH> | ||
+ | <TH>Результат</TH> | ||
+ | </TR> | ||
− | + | <TR bgcolor="#FFFFFF" class="mtx4"> | |
+ | <TD> $a and $b</TD> | ||
+ | <TD>Логічне 'і'</TD> | ||
+ | <TD>TRUE якщо і $a, і $b TRUE.</TD> | ||
+ | </TR> | ||
− | + | <TR bgcolor="#FFFFFF" class="mtx4"> | |
− | $a or $b | + | <TD>$a or $b </TD> |
− | + | <TD> Логічне 'або'</TD> | |
− | + | <TD>TRUE якщо або $a, або $b TRUE.</TD> | |
− | + | </TR> | |
− | + | ||
+ | <TR bgcolor="#FFFFFF" class="mtx4"> | ||
+ | <TD>$a xor $b</TD> | ||
+ | <TD>Виключення 'або'</TD> | ||
+ | <TD>TRUE якщо $a, або $b TRUE, но не або.</TD> | ||
+ | </TR> | ||
+ | |||
+ | <TR bgcolor="#FFFFFF" class="mtx4"> | ||
+ | <TD>! $a</TD> | ||
+ | <TD>Заперечення</TD> | ||
+ | <TD>TRUE якщо $a не TRUE.</TD> | ||
+ | </TR> | ||
+ | |||
+ | <TR bgcolor="#FFFFFF" class="mtx4"> | ||
+ | <TD>$a && $b</TD> | ||
+ | <TD>Логічне 'і'</TD> | ||
+ | <TD>TRUE якщо і $a, і $b TRUE.</TD> | ||
+ | |||
+ | </TR> | ||
+ | <TR bgcolor="#FFFFFF" class="mtx4"> | ||
+ | <TD>$a || $b</TD> | ||
+ | <TD>Логічне 'або'</TD> | ||
+ | <TD>TRUE якщо або $a, або $b TRUE.</TD> | ||
+ | </TR> | ||
+ | |||
+ | </TABLE> | ||
Зміст двох різних варіантів для операторів "and" і "or" в тому, що вони працюють з різними пріоритетами.<br> | Зміст двох різних варіантів для операторів "and" і "or" в тому, що вони працюють з різними пріоритетами.<br> | ||
+ | Слід зауважити, що обчислення логічних виразів, що містять такі оператори, йде завжди зліва направо, при цьому, якщо результат уже очевидний <br> '''(наприклад, false && что-то всегда дает false'''), то обчислення обриваються, навіть якщо у виразі присутні виклики функцій.<br> | ||
+ | '''Наприклад, в операторі $logic = 0&&(time()>100);''' стандартна функція '''time()''' ніколи не буде викликано. <br> | ||
− | + | Будьте обережні з логічними операціями - не забувайте про подвоєння символу. Зверніть увагу, що, наприклад, <br> | і | | - два зовсім різних оператора, один з яких може потенційно повертати будь-яке число, а другий - тільки помилкові і істинні. <br> | |
− | + | ||
− | + | '''Оператори інкремента (+ +) і декремента (-) не працюють з логічними змінними.''' | |
− | Оператори | + | [[Оператори мови PHP]] |
Поточна версія на 12:09, 21 квітня 2010
Логічні оператори призначені виключно для роботи з логічними виразами і повертають false або true.
Наведемо таблицю логічних операторів PHP:
Приклад | Назва | Результат |
---|---|---|
$a and $b | Логічне 'і' | TRUE якщо і $a, і $b TRUE. |
$a or $b | Логічне 'або' | TRUE якщо або $a, або $b TRUE. |
$a xor $b | Виключення 'або' | TRUE якщо $a, або $b TRUE, но не або. |
! $a | Заперечення | TRUE якщо $a не TRUE. |
$a && $b | Логічне 'і' | TRUE якщо і $a, і $b TRUE. |
$a || $b | Логічне 'або' | TRUE якщо або $a, або $b TRUE. |
Зміст двох різних варіантів для операторів "and" і "or" в тому, що вони працюють з різними пріоритетами.
Слід зауважити, що обчислення логічних виразів, що містять такі оператори, йде завжди зліва направо, при цьому, якщо результат уже очевидний
(наприклад, false && что-то всегда дает false), то обчислення обриваються, навіть якщо у виразі присутні виклики функцій.
Наприклад, в операторі $logic = 0&&(time()>100); стандартна функція time() ніколи не буде викликано.
Будьте обережні з логічними операціями - не забувайте про подвоєння символу. Зверніть увагу, що, наприклад,
| і | | - два зовсім різних оператора, один з яких може потенційно повертати будь-яке число, а другий - тільки помилкові і істинні.
Оператори інкремента (+ +) і декремента (-) не працюють з логічними змінними.