Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> bool is_null () 
V
    Опции темы
gta4kv
Дата 25.8.2010, 19:22 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



http://php.su/learnphp/datatypes/?boolean

Это сообщение отредактировал(а) gta4kv - 25.8.2010, 19:25
PM MAIL   Вверх
Nigel
Дата 25.8.2010, 19:24 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


познаю мир
**


Профиль
Группа: Участник
Сообщений: 515
Регистрация: 20.11.2007

Репутация: 7
Всего: 19



overmetallist, RTFM.
2 страницы одной и той же ерунды..
уже 3 ((

Это сообщение отредактировал(а) Nigel - 25.8.2010, 19:25
PM MAIL   Вверх
Ипатьев
Дата 25.8.2010, 19:25 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



это никак моим словам не противоречит.
результат выполнения оператора == в данном примере - TRUE, имеет булев тип.
а почему выводит 1 - потому что оператор == для данного исследования вообще не годится. Какой надо использовать вместо него - я написал выше.
Хотя, честно говоря, я не понимаю, что тут исследовать - все давно разъяснено на первой странице.
Надо только не путаться в операторах и типах переменных.



Это сообщение отредактировал(а) Ипатьев - 25.8.2010, 19:28
PM MAIL   Вверх
overmetallist
Дата 25.8.2010, 19:28 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 19.8.2010

Репутация: нет
Всего: нет



такой не подходит, а я его часто встречаю вот здесь google.com/codesearch , как и is_null
Код

if ((bool)$aaa==NULL){ echo "1";}\\ так true

PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Ипатьев
Дата 25.8.2010, 19:30 (ссылка) |    (голосов:4) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Я часто встречаю молоток в ящике с инструментами.
Но если мне надо склеить два листа бумаги, то он мне не подходит. 
Для данного исследования оператор == не подходит. Сколько бы он ни встречался в разных прочих кодах.
PM MAIL   Вверх
overmetallist
Дата 25.8.2010, 19:34 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 19.8.2010

Репутация: нет
Всего: нет



выводит bool(false); smile 
Код

$aaa=NULL;
var_dump((bool) (is_null((bool)$aaa)));


Код

var_dump((bool) (bool)Null); //bool(false)
var_dump((bool) "false");   // bool(true)
var_dump((bool) 1);         // bool(true)
var_dump((bool) -2);        // bool(true)
var_dump((bool) "foo");     // bool(true)
var_dump((bool) 2.3e5);     // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array());   // bool(false)


Это сообщение отредактировал(а) overmetallist - 25.8.2010, 19:38
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Ипатьев
Дата 25.8.2010, 19:39 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Что же в этом удивительного? 
какой еще результат можно ожидать от применения оператора (bool), если единственным его предназначением является приведение переменной к булеву типу?
Об этом на первой странице все и говорили.

Это сообщение отредактировал(а) Ипатьев - 25.8.2010, 19:53
PM MAIL   Вверх
overmetallist
Дата 25.8.2010, 19:45 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 19.8.2010

Репутация: нет
Всего: нет



ну это уже на грани моего понимания smile 
Код

$aaa=NULL;
var_dump((bool) (is_null((bool)$aaa)));  //bool(false)

Код

$aaa=NULL;
var_dump((bool) ((bool)$aaa==NULL)); //bool(true) 

PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Ипатьев
Дата 25.8.2010, 19:51 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Мне кажется, вы неспособны воспринимать, что вам пишут. 
я уже писал, результат работы операторов is_null() и == не нужно насильно приводить к булевому типу - он и так уже булев.
поэтому первый (bool) в этих примерах не нужен. (зачем там второй - тоже загадка, но это другой вопрос)
я уже писал, что оператор == для задачи, где важен тип переменной, применять нельзя. 
а вы все равно упорно его пишете. зачем? чтобы заполнить еще десяток страниц в этом топике?

Это сообщение отредактировал(а) Ипатьев - 25.8.2010, 19:53
PM MAIL   Вверх
gta4kv
Дата 25.8.2010, 19:52 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Walking around mad.
***


Профиль
Группа: Завсегдатай
Сообщений: 1868
Регистрация: 25.7.2006

Репутация: 21
Всего: 91



посты overmetallist все умнее и умнее становятся.  smile 

Это сообщение отредактировал(а) gta4kv - 25.8.2010, 19:52
PM MAIL   Вверх
overmetallist
Дата 25.8.2010, 20:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 19.8.2010

Репутация: нет
Всего: нет



согласен, так будет true в обоих результатах, если убрать bool как в прошлом случае
Код

<?php
$aaa=NULL;
var_dump((bool) (is_null($aaa)));
$aaa=NULL;
var_dump((bool) ($aaa==NULL)); 
?>


но это мне не понятно smile 
Код

$aaa=NULL;
(is_null((bool)$aaa))==false
((bool)$aaa==NULL)==true 


Код

Nulls are almost the same as unset variables and it is hard to tell the difference without creating errors from the interpreter:

<?php
$var = NULL;
?>

isset($var) is FALSE
empty($var) is TRUE
is_null($var) is TRUE

isset($novar) is FALSE
empty($novar) is TRUE
is_null($novar) gives an Undefined variable error

$var IS in the symbol table (from get_defined_vars())
$var CAN be used as an argument or an expression. 


Это сообщение отредактировал(а) overmetallist - 25.8.2010, 20:05
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Ипатьев
Дата 25.8.2010, 20:11 (ссылка) |    (голосов:3) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Что именно непонятно, лучше написать словами.
Потому что из кода этого не видно.
в каждом примере вы пишете все больше и больше операторов, не разобравшись при этом даже с предыдущими.

какая стоит задача? Узнать, имеет ли ли переменная $aaa значение NULL?

Код

$aaa=NULL;
if (is_null($aaa)) echo 1;

все, больше ничего не надо. ни (bool), ни ==, ни других замысловатых конструкций.
PM MAIL   Вверх
overmetallist
  Дата 25.8.2010, 20:17 (ссылка)    | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 51
Регистрация: 19.8.2010

Репутация: нет
Всего: нет



вот в чем дело, спасибо всем, разобрался
Код

it is hard to tell the difference without creating errors from the interpreter:
is_null($novar); gives an Undefined variable error
(is_null((bool)$aaa))==false;

постараюсь smile 
Цитата

все, больше ничего не надо. ни (bool), ни ==, ни других замысловатых конструкций. 


Это сообщение отредактировал(а) overmetallist - 25.8.2010, 20:19
PM MAIL WWW IM ICQ Skype GTalk Jabber AOL YIM MSN   Вверх
Страницы: (3) Все 1 2 [3] 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1040 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.