![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
Canarat |
|
||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
Приветствую.
Выдает следующий результат:
Т.е. в последних трех вызовах не происходит никаких изменений. Мне кажется такое поведение нелогично, если я ошибаюсь - можно ли это как-то объяснить или нужно задействовать другой способ вызова? |
||||
|
|||||
solenko |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1473 Регистрация: 15.1.2006 Где: Украина Репутация: 34 Всего: 67 |
Какая версия php?
У меня на 5.2.1 ожидаемое поведение (от 1 до 4) -------------------- Ла-ла-ла-ла Заметьте, нет официального подтверждения, что это не просто четыре слога. |
|||
|
||||
Vaulter |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1724 Регистрация: 30.12.2002 Где: бункер Репутация: 6 Всего: 22 |
|
|||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
PHP 5.1.6, на серверах такая же. Что мне с ней поделать?
|
|||
|
||||
vasac |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1060 Регистрация: 4.5.2006 Репутация: 8 Всего: 36 |
А class3 тут причем?
|
|||
|
||||
SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 32 Всего: 401 |
У меня (5.2.1 под WinXP) результат такой же, как у Vaulterа. Но вообще само обращение к $this->cl без объявления этой самой public $cl выглядит странно и непривычно...
-------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
N0dwis |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 18.9.2007 Где: Луганск Репутация: 2 Всего: 4 |
![]() А можно узнать в чем суть таких телодвижений? Чисто академический интерес? |
|||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
N0dwis, в какой-то мере да, я в поисках оптимальной структуры взаимодействия не классов, а объектов.
SelenIT, объявление не помогает, поведение аналогично, хотя выглядит все более прозрачно. vasac, я просто показал, что в системе из трех объектов, два из которых связаны с первым, но не связаны друг с другом, третий обьект не может изменить второй через жесткую ссылку на первый. Я прошу тех, у кого 5.2, проверить результаты на 5.1.х, чтобы мои опасения подтвердились. |
|||
|
||||
N0dwis |
|
|||
Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 18.9.2007 Где: Луганск Репутация: 2 Всего: 4 |
Проверил у себя на 5.2.4 - тоже работает нормально.
Но по-моему ты все таки ерундой занимаешься. Все ООП создавалось для того, чтобы отделить разные сущности друг от друга. Инкапсуляция! А ты пытаешься сделать наоборот. |
|||
|
||||
solenko |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1473 Регистрация: 15.1.2006 Где: Украина Репутация: 34 Всего: 67 |
N0dwis, ерундой-не не важно. Скрипт ведет себя неожиданным образом, это недокументировано, а значит это либо баг либо фича о которой полезно знать. Если бы никто не занимался фигней, то до сих пор сидели бы мы с php3
Добавлено через 5 минут и 24 секунды
-------------------- Ла-ла-ла-ла Заметьте, нет официального подтверждения, что это не просто четыре слога. |
|||
|
||||
solenko |
|
|||
Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1473 Регистрация: 15.1.2006 Где: Украина Репутация: 34 Всего: 67 |
Вобщем не знаю как это у вас получилось -- у меня так не получается
-------------------- Ла-ла-ла-ла Заметьте, нет официального подтверждения, что это не просто четыре слога. |
|||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
solenko,
Может суть в том, что у меня не cli версия? Именно недокументированное поведение меня и смущает, т.к. после этого инцидента я пересматривать буду структуру в соответствии с теорией дзен-буддизма и философией постулатов ООП. |
|||
|
||||
SelenIT |
|
|||
![]() баг форума ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3996 Регистрация: 17.10.2006 Где: Pale Blue Dot Репутация: 32 Всего: 401 |
Имхо, все нормально - такая композиция объектов, при которой объект-часть знает, чей он (вроде свойства form у элемента формы в JS), имеет право на жизнь и во многих случаях оправдана. Canarat, а каких-нибудь Zend Accelerator'ов и т.п. у тебя часом не стоит? Особенно старых версий, заточенных еще под ZE1? -------------------- Осторожно! Данный юзер и его посты содержат ДГМО! Противопоказано лицам с предрасположенностью к зонеризму! |
|||
|
||||
Canarat |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 212 Регистрация: 11.3.2008 Где: Каспий Репутация: 5 Всего: 5 |
SelenIT, никаких надстроек и нестандартных библиотек. Есть xDebug, но это из другой оперы.
|
|||
|
||||
N0dwis |
|
||||
Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 18.9.2007 Где: Луганск Репутация: 2 Всего: 4 |
Еще раз посмотрел внимательно код, смутила одна строчка,
Насколько я знаю, в php5 операция & практически бессмысленна (уточните, если я ошибаюсь), все объекты и так передаются через указатели. Если подходить формально, то ты присваиваешь переменной $cl значение адреса переменной $this, но никак не значение адреса объекта. Попробуй так, вдруг получится:
|
||||
|
|||||
![]() ![]() ![]() |
Правила форума "PHP" | |
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |