Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите разобраться с возвращение FALSE из функции

18K
21 августа 2006 года
lDaniil
8 / / 16.08.2006
Есть такой код :

<?PHP

FUNCTION GetTrue ( )
{
Return TRUE ;
}

FUNCTION GetFalse ( )
{
Return FALSE ;
}

Echo GetTrue ( ) , '<BR/>' ; // выводит 1
Echo GetFalse ( ) ; // ничего не выводит

?>

Объясните такое действие.
8
21 августа 2006 года
mfender
3.5K / / 15.06.2005
Я, конечно, извиняюсь, но с какого кипариса echo станет выводить что-то булевое? echo рисует строки. Чтобы увидеть булевое значение в PHP нужно, как минимум var_dump()
20K
21 августа 2006 года
n0n@m3
8 / / 19.08.2006
Дело в том что False ето еше и NULL точнее ничего. Поэтому он это ничего и выводит. но если ты хочеш получить 1 или 0, то делай так : Echo (int) GetFalse();
8
21 августа 2006 года
mfender
3.5K / / 15.06.2005
[QUOTE=n0n@m3]Дело в том что False ето еше и NULL точнее ничего. Поэтому он это ничего и выводит. но если ты хочеш получить 1 или 0, то делай так : Echo (int) GetFalse();[/QUOTE]
Нет. False, если уж приводить его к Integer = 0, но никак не null.
Есть такие странные недоделки в PHP. Например, если есть такой запрос:
http://domain.dom/script.php?var=
то значение $_GET['var'] нужно специально привести к значению null (как хотелось бы), иначе она всегда будет (string)""

Так вот, false - всегда только false. true - всегда только true. На физическом уровне у них почти +3 вольта разницы.
18K
21 августа 2006 года
lDaniil
8 / / 16.08.2006
Так почему TRUE приводит к 1 , а FALSE к 0 нет.
В PHP4 помоему все нормально было
8
21 августа 2006 года
mfender
3.5K / / 15.06.2005
[QUOTE=lDaniil]Так почему TRUE приводит к 1 , а FALSE к 0 нет.
В PHP4 помоему все нормально было[/QUOTE]
Встречный вопрос: а почему echo? Булевые результаты нужны только для проверки состояния чего-либо, но никак не для вывода их на экран!
18K
21 августа 2006 года
lDaniil
8 / / 16.08.2006
Да ради эксперемента.Echo перед выводом преобразует тип переменной
к string , вот получается что TRUE преобразуется в 1, а FALSE не
преобразуется в 0. А на щёт использования ты прав.
8
21 августа 2006 года
mfender
3.5K / / 15.06.2005
echo ничего и никуда не преобразует. echo только в поток отдаёт строки.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог