|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.04.2011, 01:23 | #1 |
Пользователь
Регистрация: 06.09.2009
Сообщений: 66
|
не могу разобрать условие для If в PHP
не могу понять почему в PHP выражение в линейке 5 дает истинное значение, это просто операция присвоения
розясните подробно как работает проверка условия PHP код:
|
26.04.2011, 02:31 | #2 |
Форумчанин
Регистрация: 29.11.2008
Сообщений: 333
|
потому что вы присваиваете значение, а не сравниваете, двойное равенство нужно ==
PHP код:
Если помог - Весы слева
|
26.04.2011, 06:24 | #3 |
Чатланин!
Форумчанин
Регистрация: 20.11.2010
Сообщений: 140
|
а с чего тут быть "false", если вы по сути проверяете на истинность кагбэ саму возможность присвоения
другими словами, PHP считает так: если я могу переменной $a присвоить значение переменной $b, то все нормально. А уж выполнить это присвоение и, соответственно, получить "true" при проверке if, php никто не мешает! |
26.04.2011, 08:11 | #4 | |
Старожил
Регистрация: 09.09.2008
Сообщений: 2,624
|
Цитата:
PHP сначала выполняет операцию присвоения, а потом уже сравнения. PHP код:
Стрелок-охотник
|
|
26.04.2011, 12:52 | #5 |
Пользователь
Регистрация: 06.09.2009
Сообщений: 66
|
Я так понимаю если результат присвоения (или иной операции) является больший нуля то значеть значение истинное, а если ноль то значение не истинное Может такое быть?
|
26.04.2011, 12:57 | #6 |
Antimoderаtoris
Участник клуба
Регистрация: 08.02.2008
Сообщений: 1,251
|
Правильно. Может.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
|
26.04.2011, 22:03 | #7 |
Пользователь
Регистрация: 06.09.2009
Сообщений: 66
|
спасибо всем за ответы.
|
26.04.2011, 22:37 | #8 |
Чатланин!
Форумчанин
Регистрация: 20.11.2010
Сообщений: 140
|
|
27.04.2011, 10:09 | #9 |
Старожил
Регистрация: 09.09.2008
Сообщений: 2,624
|
Вот сравнение
PHP код:
if ($a) - это и есть сравнение.
Стрелок-охотник
|
29.04.2011, 08:42 | #10 |
Пользователь
Регистрация: 22.03.2011
Сообщений: 23
|
в конструкции if(expr), php неявно преобразует expr в булев тип.
При преобразовании в логический тип, следующие значения рассматриваются как FALSE: Сам булев FALSE целое 0 (ноль) число с плавающей точкой 0.0 (ноль) пустая строка и строка "0" пустой массив объект без атрибутов (только в PHP 4) специальный тип NULL (включая неустановленные переменные) Все остальные значения рассматриваются как TRUE (включая любой ресурс). /**Примечание: информация взята из официального мануала
"Сильный" программист
|
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не могу задать корректно условие While | sergey113 | Помощь студентам | 1 | 10.03.2011 16:23 |
Код CSS не могу разобрать... | misher | HTML и CSS | 13 | 26.12.2010 21:42 |
Не могу написать условие в php | vinok82 | PHP | 2 | 28.05.2010 12:24 |
не могу прописать php для апачи | Gokusa | PHP | 9 | 28.01.2010 10:54 |
Не могу разобрать с матрицами | svetlana891 | Помощь студентам | 4 | 18.06.2009 10:56 |