За последние 24 часа нас посетили 21187 программистов и 1632 робота. Сейчас ищут 1398 программистов ...

помогите с оператором if()

Тема в разделе "PHP для новичков", создана пользователем pochtdim, 5 окт 2011.

  1. pochtdim

    pochtdim Активный пользователь

    С нами с:
    5 окт 2011
    Сообщения:
    10
    Симпатии:
    0
    почему операторо if($x = 0) {1}else{2} выполняет 2 вместо 1? как обойти этот нюанс?
     
  2. alexfer

    alexfer Активный пользователь

    С нами с:
    2 авг 2010
    Сообщения:
    239
    Симпатии:
    0
  3. crautcher

    crautcher Активный пользователь

    С нами с:
    21 май 2011
    Сообщения:
    156
    Симпатии:
    0
    ($x == 0) , одинарное равно - знак присваивания
     
  4. pochtdim

    pochtdim Активный пользователь

    С нами с:
    5 окт 2011
    Сообщения:
    10
    Симпатии:
    0
    я вкурсе что $x = 0 это присвоение переменной значение ноля, но почему именно ноль приводит к признанию операции не истинной - и как это обойти
     
  5. [vs]

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

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    какой нафиг операции? На момент обработки if там нет и не бывает никакой операции, а есть только результат этой операции. В данном случае, это 0 в переменной $x, а 0 суть false.
     
  6. pochtdim

    pochtdim Активный пользователь

    С нами с:
    5 окт 2011
    Сообщения:
    10
    Симпатии:
    0
    тоесть if(0) будет всегда принимать значение false, и обойти это нельзя никак?
     
  7. georgela

    georgela Активный пользователь

    С нами с:
    11 май 2011
    Сообщения:
    395
    Симпатии:
    0
    можно обойти,для этого нужно нормальный условный оператор написать.То есть разобраться чего ты от жизни хочешь
     
  8. krow7

    krow7 Активный пользователь

    С нами с:
    12 авг 2009
    Сообщения:
    398
    Симпатии:
    0
    Адрес:
    из Азии
    обойти можно, поставьте if(1), и больше не задавайте глупых вопросов.
     
  9. [vs]

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

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    PHP:
    1. if (0 == $x = 0)
     
  10. pochtdim

    pochtdim Активный пользователь

    С нами с:
    5 окт 2011
    Сообщения:
    10
    Симпатии:
    0
    if (0 == $x = 0) то что нужно!
    обойти можно, поставьте if(1), и больше не задавайте глупых вопросов. это я упростил вопрос - на самом деле там идет обработка класа
     
  11. pochtdim

    pochtdim Активный пользователь

    С нами с:
    5 окт 2011
    Сообщения:
    10
    Симпатии:
    0
    а еще правелнее if (0 === $x = 0)
     
  12. [vs]

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

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    для обработки классов скорее всего существуют специальные средства
     
  13. krow7

    krow7 Активный пользователь

    С нами с:
    12 авг 2009
    Сообщения:
    398
    Симпатии:
    0
    Адрес:
    из Азии
    pochtdim
    вы уж, пожалуйста, в дальнейшем все секретики заранее рассказывайте, а то получается что попало :)