#1 2011.10.11 15:34

Глобатор
Участник
Зарегистрирован: 2011.05.17
Сообщений: 113
Карма: 3
Профиль

ДАЙТЕ РНР КОД

Даты и времени )

Неактивен

#2 2011.10.11 15:39

Oliver
Участник
Зарегистрирован: 2011.10.11
Сообщений: 5
Карма: 0
Профиль

Re: ДАЙТЕ РНР КОД

держи))


Вложения

Неактивен

#3 2011.10.11 15:51

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6594
Карма: 107
Профиль Веб-сайт

Re: ДАЙТЕ РНР КОД

ппц.. нужно при регистрации проверку вводить типа что будет если echo print 1;

Неактивен

#4 2011.10.11 16:45

Глобатор
Участник
Зарегистрирован: 2011.05.17
Сообщений: 113
Карма: 3
Профиль

Re: ДАЙТЕ РНР КОД

Нету?))
Добавлено спустя   1 минуту  24 секунды:
Gemorroj , почему?

Неактивен

#5 2011.10.11 16:48

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: ДАЙТЕ РНР КОД

Gemorroj написал:

ппц.. нужно при регистрации проверку вводить типа что будет если echo print 1;

А правда что будет? если print вернет true то результат будет 11

Неактивен

#6 2011.10.11 17:13

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6594
Карма: 107
Профиль Веб-сайт

Re: ДАЙТЕ РНР КОД

http://php.net/print

manual написал:

Returns 1, always.

Неактивен

#7 2011.10.11 17:17

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: ДАЙТЕ РНР КОД

Кстати ответь какой результат будет без мануала:
i = 10;
i = i++;
сколько будет содержать i?
Вопрос в том что инкремент произойдет после присваивания но но я не понял логики.

Неактивен

#8 2011.10.11 18:01

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6594
Карма: 107
Профиль Веб-сайт

Re: ДАЙТЕ РНР КОД

ну а собсно, этим и отличается префиксный и постфиксный инкремент/декремент.
такое вполне нужно бы знать и без мануала.

Неактивен

#9 2011.10.11 23:11

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: ДАЙТЕ РНР КОД

Да я не за это, "префиксный и постфиксный инкремент/декремент" это уже давно знаю.
если бы код был таков
i = 10;
j = i ++;
я не задумываясь ответил бы что j = 10 а i = 11;
Когда мне загадали эту загадку я не задумываясь ответил что будет 11
Почему: Ведь переменной i присваивается 10 потом снова 10 и после присваивания эта же переменная увеличивается.
Логики вообще не пойму.
Не знаю как тебе обьяснить
вот код может поймешь о чем я.

Код:

1
span style="color: #0000BB"><?php$i = 10;$i = $i ++;$j = $i ++;echo "[" . $i . "] [" . $j . "]"; // [11] [10]

Вот я думал что полностью понимаю логику апача.
Но оказывается все не так.

Неактивен

#10 2011.10.12 11:02

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6594
Карма: 107
Профиль Веб-сайт

Re: ДАЙТЕ РНР КОД

я вот не понимаю твое негодование.
именно так и работает ПОСТфиксный инкремент.

Неактивен

#11 2011.10.12 11:19

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: ДАЙТЕ РНР КОД

чет не понял,почему тут

i = 10;
j = i ++;
j  будет равно 10 ? если идет что i = 10 а j = i ++,то это j должно идти 10 и +1 ,а Дима написал:
"i = 10;
j = i ++;
я не задумываясь ответил бы что j = 10 а i = 11;"

Неактивен

#12 2011.10.12 12:46

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: ДАЙТЕ РНР КОД

"я не задумываясь ответил бы что j = 10 а i = 11;"  почему ты написал что j равна 10 если там идет "i = 10;  j = i ++; ?((

Неактивен

#13 2011.10.12 13:22

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: ДАЙТЕ РНР КОД

POFIGISST
Понимаешь $j = $i ++;
Сначало присваивается Значение i в j а потом уже i увеличивается на 1;
Если бы $j = ++ $i тогда да.
Вопрос в другом я не пойму последовательности выполнения кода

Gemorroj написал:

я вот не понимаю твое негодование.

Вот смотри распишу тебе дебаг.
i = 10;
i = i ++;
debug:
1)

      i = 10;
      i = i++;

i присваивается 10 (i = 10;)
__________________
2) шаг

     i = 10;
     i = i ++;

i присваивается 10 (i = i;)
__________________
3) Ну и третий шаг когда переменной i присвоено 10 выполняется ее инкремент.

     i = 10;
     i = i ++;

???????

Только пожалуйста не надо третий раз писать ++ i; и i ++; это две разные вещи, не то я не выдержу и разобью свою клаву.

Неактивен

#14 2011.10.12 13:38

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: ДАЙТЕ РНР КОД

Паша короче забей. Я тоже начал себе голову ломать.
Пойду делом займусь.

Неактивен

#15 2011.10.12 13:46

POFIGISST
Участник
Зарегистрирован: 2011.03.20
Сообщений: 1531
Карма: 6
Профиль

Re: ДАЙТЕ РНР КОД

аааа,спасибо,я думал что так тоже сразу увеличивается на i ((теперь буду знать((

Неактивен

#16 2011.10.12 13:48

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6594
Карма: 107
Профиль Веб-сайт

Re: ДАЙТЕ РНР КОД

Ну, я все же еще раз повторюсь, что именно так работают префиксный и постфиксный инкремент.
Просто нужно запомнить это отличие. Если бы его не было, не было бы и 2-х типов инкремента.
Что касается низкоуровнего разбора такого поведения, то я могу только предполагать.
Мои мысли:
На 2 шаге мы присвоили некой области памяти i значение 10. Затем сделали инкремент старой области памяти i. Но поскольку i находится в новой области памяти, инкремент прошел "в никуда".

Неактивен

#17 2011.10.12 13:57

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: ДАЙТЕ РНР КОД

Gemorroj написал:

Мои мысли:
На 2 шаге мы присвоили некой области памяти i значение 10. Затем сделали инкремент старой области памяти i. Но поскольку i находится в новой области памяти, инкремент прошел "в никуда".

Вот что я имел в виду. А не инкремент и декремент.
Просто мне загадали загадку типо как ребенку что я незнаю как работает инкремент.
Но я вообще задумывался именно в то как поведет себя код т.е. что последнее присвоится.
Кстати тот кто загадал мне эту загадку не смог ответит на тот же вопрос что я задал тебе.
Эх как камень с души.

Неактивен

Дополнительно

forum.wapinet.ru

PunBB Mod v0.6.2
0.017 s