За последние 24 часа нас посетили 15458 программистов и 1603 робота. Сейчас ищут 830 программистов ...

Логический оператор &&

Тема в разделе "PHP для новичков", создана пользователем DaniilKhanin, 30 июл 2014.

  1. DaniilKhanin

    DaniilKhanin Новичок

    С нами с:
    30 июл 2014
    Сообщения:
    24
    Симпатии:
    0
    Добрового времени суток,
    имеется
    Код (Text):
    1.  
    2.  <?php
    3. $a=-10;
    4. $b=100;
    5. if ($a&&$b>0)
    6. echo "a>0, b>0";
    7. else
    8. echo ("a<0,b<0");
    9. ?>
    почему он выводит a>0, b>0; ведь оператор && возвращает истину только в том случае если истинны оба выражения , тоесть если а >0 b>0 , а у меня же a<0 почему он всеравно выводит a>0, b>0 ???? Объясните новичку пожалуйста
     
  2. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Код (Text):
    1. if ($a > 0 && $b > 0)
     
  3. DaniilKhanin

    DaniilKhanin Новичок

    С нами с:
    30 июл 2014
    Сообщения:
    24
    Симпатии:
    0
    Спасибо)
     
  4. VLK

    VLK Старожил

    С нами с:
    15 дек 2013
    Сообщения:
    3.010
    Симпатии:
    58
    Код (Text):
    1. if ($a&&$b>0)
    выглядит так:
    Код (Text):
    1. if ( ($a) && ($b>0) )
    и переводится это так:
    если ( ($a НЕ равно false и существует) && ($b больше нуля) ) тогда что то выполняется

    и для читабельности кода ставьте больше пробелов.
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    оба выражения справа и слева от него. слева от него стоит переменная, соотв пхп просто проверяет её на нестрогое равенство true.
     
  6. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Код (PHP):
    1. if($a & $b>0) 
     
  7. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Код (Text):
    1. $a = -10;
    2. $b = 100;
    3. var_dump(($a & $b)); //100
    нежданчик! ;-)