X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

2 страниц V   1 2 >
Открыть тему
Тема закрыта
> define ('true', false, true); - что значит?
Bustle_hb
Bustle_hb
Topic Starter сообщение 12.7.2011, 17:21; Ответить: Bustle_hb
Сообщение #1


[PHP]define ('true', false, true);
define ('false', true, true);[/PHP]
Собственно узнал, что это плохая шутка над программистом, что она делает?
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 12.7.2011, 17:25; Ответить: alexdrob
Сообщение #2


ну посмотрите на код и подумайте, что это?
define определение констант.
вы определяете константу true = false, а false = true
то есть как бы меняете их значения на противоположные. но вот беда, не уверен что такой код сработает.в первой строке true должно стать = false а во втором false должно стать уже в зависимости от нового true, а так как новое true = false, то вторая строка не чего не сделает.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 12.7.2011, 17:27; Ответить: alexdrob
Сообщение #3


[PHP]define ('true', false, true);
define ('false', true, true);

var_dump(true);
var_dump(false);[/PHP]
результат
Notice: Constant true already defined in D:\Apache\htdocs\1.php on line 13

Notice: Constant false already defined in D:\Apache\htdocs\1.php on line 14
bool(true)
bool(false)


Шутка не удалась)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
сообщение 12.7.2011, 17:34; Ответить: MetSerp
Сообщение #4


(Nick-name @ 12.7.2011, 20:21) *
Собственно узнал, что это плохая шутка над программистом, что она делает?

это не плохая шутка, а не рабочая шутка на php как минимум, так как переписать свои слючевые слова он не даст
[PHP]define ('true', false, true);
define ('false', true, true);
$var = false;
if ($var){
echo 'true';
}
if (!$var){
echo 'false';
}[/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bustle_hb
Bustle_hb
Topic Starter сообщение 12.7.2011, 17:41; Ответить: Bustle_hb
Сообщение #5


Ясно. Всем спасибо.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
MetSerp
MetSerp
сообщение 12.7.2011, 17:41; Ответить: MetSerp
Сообщение #6


даже скорее вообще не рабочая штука, так как для ее работы нужно чтобы true и false не являлись ни ключ словами ни константами, либо не были до того определены, а булевый тип есть почти везде.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 12.7.2011, 17:53; Ответить: alexdrob
Сообщение #7


ну в c++ часто определяют
[PHP]#define TRUE 1
#define FALSE 0[/PHP]
но переопределить вряд ли получится на то они и константы, они не имеют имени по сути, это для человека они имеют имя а компилятор на сколько я знаю вместо них подставить напрямую значение в коде
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
RequIem
RequIem
сообщение 12.7.2011, 18:50; Ответить: RequIem
Сообщение #8


(alexdrob @ 12.7.2011, 20:25) *
но вот беда, не уверен что такой код сработает.в первой строке true должно стать = false а во втором false должно стать уже в зависимости от нового true, а так как новое true = false, то вторая строка не чего не сделает.

С рекурсией такой проблемы нету, тут тоже, косательно если оно "будет работать", но толку, не работает :D
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 12.7.2011, 18:55; Ответить: alexdrob
Сообщение #9


(RequIem @ 12.7.2011, 21:50) *
С рекурсией такой проблемы нету

при чём тут рекурсия?)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bustle_hb
Bustle_hb
Topic Starter сообщение 12.7.2011, 18:55; Ответить: Bustle_hb
Сообщение #10


Дабы несоздавать новую тему, пишу вопрос сюда:
Есть цыкл фор:
[PHP]
$str ='Hello';
for ($i=0, $cnt=strlen($str); $i<$cnt; $i++)
{
echo $str{$i}. '</br>';
}
[/PHP]
Поясните:
[PHP]$i=0,[/PHP]
Почему тут запятая?

[PHP]$cnt=strlen($str); $i<$cnt;[/PHP]
И как понять это?

[PHP]$str{$i}[/PHP]
И что значат эти[PHP] {}[/PHP]

Это так учат, простой масив, а потом понасововали всего, не обяснив, что это значит.:wacko:

[PHP]for ($i=0, $cnt=strlen($str); $i<$cnt; $i++) [/PHP]
Понял все, кроме почему сдесь запятая.

Насколько я эксперементированиям понял, то:
[PHP]$str{$i}[/PHP]
Берется первый симов строки, у нас H
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
2 страниц V   1 2 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Тема имеет прикрепленные файлыВо что Вы играете?
400 Vmir 68016 20.4.2024, 18:39
автор: SaintExchange
Горячая тема (нет новых ответов) Во что сегодня инвестировать?
Делимся своими приносящими прибыль вариантами
76 traveliver 5107 20.4.2024, 18:27
автор: SaintExchange
Открытая тема (нет новых ответов) "Извините, что ожидание затянулось, но не думайте, пожалуйста, что мы про вас забыли. Мы заводим задачи по всем обращениям и контролируем работу над ними самым тщательным образом."
Вопрос
0 kuz999 1252 5.2.2024, 14:06
автор: kuz999
Открытая тема (нет новых ответов) Finkort - Финансовая партнерская сеть. Мы знаем, что вам нужно.
2 Finkort 1621 28.9.2023, 16:04
автор: Finkort
Открытая тема (нет новых ответов) Что случилось с тизеркой BodyClick?
1 Boymaster 1009 22.9.2023, 10:45
автор: Boymaster


 



RSS Текстовая версия Сейчас: 25.4.2024, 22:01
Дизайн