Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: boolean значение

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
jonston
Отправлено: 07 Ноября, 2012 - 15:06:04
Post Id



Посетитель


Покинул форум
Сообщений всего: 455
Дата рег-ции: Март 2011  


Помог: 3 раз(а)




Здравствуйте! скажите почему
PHP:
скопировать код в буфер обмена
  1.  
  2. echo (1 === 1) == 1 выводит 1 а не true?
  3.  


-----
$i = 0;
$i = $i++ + ++$i; ?
 
 Top
Мелкий Супермодератор
Отправлено: 07 Ноября, 2012 - 15:08:18
Post Id



Активный участник


Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009  
Откуда: Россия, Санкт-Петербург


Помог: 618 раз(а)




Потому что bool к строке (для echo) приводится как 0 или 1.


-----
PostgreSQL DBA
 
 Top
DeepVarvar Супермодератор
Отправлено: 07 Ноября, 2012 - 15:09:11
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)







Интересно правда? Закатив глазки
 
 Top
jonston
Отправлено: 07 Ноября, 2012 - 15:17:11
Post Id



Посетитель


Покинул форум
Сообщений всего: 455
Дата рег-ции: Март 2011  


Помог: 3 раз(а)




Мелкий пишет:
Потому что bool к строке (для echo) приводится как 0 или 1.

понятно чисто индивидуальное решение php.Например в javascript alert(1 === 1) выводит true хотя и (1 === 1) == 1 тоже верно.


-----
$i = 0;
$i = $i++ + ++$i; ?
 
 Top
OgStyle
Отправлено: 07 Ноября, 2012 - 15:17:32
Post Id


Гость


Покинул форум
Сообщений всего: 86
Дата рег-ции: Март 2012  


Помог: 0 раз(а)




Любые значения не равные 0 или false будут равны 1
 
 Top
DeepVarvar Супермодератор
Отправлено: 07 Ноября, 2012 - 15:40:06
Post Id



Активный участник


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


Помог: 353 раз(а)




jonston пишет:
в javascript alert(1 === 1) выводит true хотя и (1 === 1) == 1 тоже верно

Нет:
CODE (javascript):
скопировать код в буфер обмена
  1. var a = 1, b = "1";
  2. if (a.constructor == Number && b.constructor == Number && a == b) {
  3.   alert("Ok");
  4. }
 
 Top
IllusionMH
Отправлено: 07 Ноября, 2012 - 15:50:42
Post Id



Активный участник


Покинул форум
Сообщений всего: 4254
Дата рег-ции: Февр. 2011  
Откуда: .kh.ua


Помог: 242 раз(а)




upd. прощу прощенья. неправильно понял сообщение.
Речь о способе вывода

jonston, не путайте последний вариант DeepVarvar с === и ваш с ==
CODE (javascript):
скопировать код в буфер обмена
  1. console.log(((1 === 1) === 1)); //false
  2. console.log(((1 === 1) == 1)); //true

оба ответа очевидны

(Отредактировано автором: 07 Ноября, 2012 - 16:19:36)

 
 Top
OrmaJever Модератор
Отправлено: 07 Ноября, 2012 - 18:55:27
Post Id



Активный участник


Покинул форум
Сообщений всего: 7540
Дата рег-ции: Янв. 2010  
Откуда: Чернигов


Помог: 299 раз(а)




[quote=jonston]Например в javascript alert(1 === 1) выводит true[/quote]
А в php что нет? Однако

Вы просто не учитываете специфику echo
[quote=jonston][/quote]
А почему нет? Однако двойное равно не берёт в учёт тип литерала, поэтому true == 1. Всё вроде просто.


-----
Если вы хотя бы 3-4 раза не решите всё выкинуть и начать заново - вы явно что-то делаете не так.
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB