Відмінності між версіями «Логічні оператори PHP»

Матеріал з Вікі ЦДУ
Перейти до: навігація, пошук
Рядок 1: Рядок 1:
Логічні оператори призначені виключно для роботи з логічними виразами і повертають false або true.
+
Логічні оператори призначені виключно для роботи з логічними виразами і повертають '''false або true.'''
  
Приведем таблицу логических операторов PHP:
+
'''Приведем таблицу логических операторов 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.
+
  
 +
Приклад       Назва           Результат
 +
$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" в тому, що вони працюють з різними пріоритетами.<br>  
 
Зміст двох різних варіантів для операторів "and" і "or" в тому, що вони працюють з різними пріоритетами.<br>  
 +
Слід зауважити, що обчислення логічних виразів, що містять такі оператори, йде завжди зліва направо, при цьому, якщо результат уже очевидний <br> '''(наприклад, false && что-то всегда дает false'''), то обчислення обриваються, навіть якщо у виразі присутні виклики функцій.<br>
 +
'''Наприклад, в операторі $logic = 0&&(time()>100);''' стандартна функція '''time()''' ніколи не буде викликано. <br>
  
Слід зауважити, що обчислення логічних виразів, що містять такі оператори, йде завжди зліва направо, при цьому, якщо результат уже очевидний (наприклад, false && что-то всегда дает false), то обчислення обриваються, навіть якщо у виразі присутні виклики функцій.<br>
+
Будьте обережні з логічними операціями - не забувайте про подвоєння символу. Зверніть увагу, що, наприклад, <br> | і | | - два зовсім різних оператора, один з яких може потенційно повертати будь-яке число, а другий - тільки помилкові і істинні. <br>
Наприклад, в операторі $logic = 0&&(time()>100); стандартна функція time() ніколи не буде викликано.
+
 
+
Будьте обережні з логічними операціями - не забувайте про подвоєння символу. Зверніть увагу, що, наприклад, | і | | - два зовсім різних оператора, один з яких може потенційно повертати будь-яке число, а другий - тільки помилкові і істинні. <br>
+
  
Оператори інкремента (+ +) і декремента (-) не працюють з логічними змінними.
+
'''Оператори інкремента (+ +) і декремента (-) не працюють з логічними змінними.'''

Версія за 13:08, 19 квітня 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() ніколи не буде викликано.

Будьте обережні з логічними операціями - не забувайте про подвоєння символу. Зверніть увагу, що, наприклад,
| і | | - два зовсім різних оператора, один з яких може потенційно повертати будь-яке число, а другий - тільки помилкові і істинні.

Оператори інкремента (+ +) і декремента (-) не працюють з логічними змінними.