|
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 825
|
|
Пояснение по this17.06.2016, 17:30. Показов 1928. Ответов 16
Доброго времени суток! Кто может на пальцах пояснить предназначение $this и на что ссылается $this и т.д.
0
|
|
| 17.06.2016, 17:30 | |
|
Ответы с готовыми решениями:
16
нужно пояснение по части из курсовой связанной с записями и массивами, напротив вопросов дать пояснение что операторы делают или строчки программы
пояснение |
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
| 17.06.2016, 17:36 | |
|
0
|
|
|
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 825
|
|
| 17.06.2016, 17:39 [ТС] | |
|
Jewbacabra, норм объяснение $this на пальцах
0
|
|
|
4925 / 3920 / 1620
Регистрация: 24.04.2014
Сообщений: 11,441
|
|
| 17.06.2016, 18:07 | |
|
Inkvizzz, что конкретно в $this не понятно?
0
|
|
|
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 825
|
|
| 17.06.2016, 18:08 [ТС] | |
|
Jewbacabra, как она работает не понятно, я и на php.net и php.su читал, но до конца не понял как оно работает.
0
|
|
|
|
|
| 17.06.2016, 18:52 | |
|
Inkvizzz, я тоже долго понять не мог что да как, разобрался очень очень просто, напиши какой нибудь маленький класс и ссылайся на него, тут надо просто понять логику, $this ссылается на себя это да но задается она по разному) напиши и все поймешь
1
|
|
|
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
|
||
| 17.06.2016, 19:14 | ||
|
Прочитайте учебник по ООП в PHP (хотя не обязательно PHP, принципы везде одинаковые).
2
|
||
|
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
|
|||||||
| 17.06.2016, 20:42 | |||||||
Сообщение было отмечено Inkvizzz как решение
Решение
$this->price - это переменная объекта. Как написали выше, $this ссылается на себя, т.е. на вызываемый объект. Вне класса вы можете написать $obj->showPrice(), а внутри (в функциях) нужно писать $this->showPrice().
2
|
|||||||
|
31 / 45 / 21
Регистрация: 09.10.2012
Сообщений: 825
|
|
| 17.06.2016, 22:14 [ТС] | |
|
pav1uxa, ну вот как раз и собираюсь уходить от процедурки и начал читать оф мануал про ООП, запнулся на это моменте
Человеку постом ниже удалось мне объяснить как говорят "на пальцах", что к чему
0
|
|
|
5 / 5 / 2
Регистрация: 26.03.2015
Сообщений: 68
|
|
| 24.06.2016, 12:14 | |
|
Пока пишется код класса ни о каком конкретном экземпляре объекта не идёт речь. Поэтому вставляется $this.
Если же создаётся какой-то объект (двумя постами выше - $obj), то в момент выполнения вместо $this подставляется $obj. Т.е. создаётся объект $obj с переменными $price и $discount, имеющими, значения 1000 и 200 соответственно. Обратиться к этим переменным можно так: $obj->$price и $obj->$discount. (К переменной $price из метода showPrice() обратиться за пределами этого метода, а тем более класса, нельзя). Если создать ещё один объект, например $obj2, то при вызове метода $obj2->showPrice() интепретатор PHP подставит вместо $this значение $obj2. Добавлено через 7 минут Немного поправлюсь: Пока пишется код класса ни о каком конкретном экземпляре объекта не идёт речь. Поэтому вставляется $this. Если же создаётся какой-то объект (двумя постами выше - $obj), то в момент выполнения вместо $this подставляется $obj. Т.е. создаётся объект $obj с переменными $price и $discount, имеющими, значения 1000 и 200 соответственно. Обращение к этим переменным в методе showPrice() происходит так: $obj->price и $obj->discount. (К переменной $price из метода showPrice() обратиться за пределами этого метода, а тем более класса, нельзя). Если создать ещё один объект, например $obj2, то при вызове метода $obj2->showPrice() интепретатор PHP подставит вместо $this значение $obj2.
1
|
|
|
0 / 0 / 1
Регистрация: 17.12.2013
Сообщений: 66
|
|
| 29.07.2016, 20:37 | |
|
Правильно, тоже начал изучать ООП, и не мог понять, как и на что ссылается, понял только после того как начал писать свои примеры, на базе тех что видел в туториалах, и тогда на ошибках ты начинаеш понимать логику. Классы и подклассы, доступ к обьектам и т д, наследование и т д.. пока что дошел до Инкапсюляции но еще не изучал, потом идут Абстракты, тоже интересно что это, просто раньше мне это не нужно было, так понимал базого что где ковырнуть и т д.. а когда реально понадобился, а особенно ковырять классы и ооп... тут без изучение всего этого не обошлось, начал понимать так же что ооп это хорошая вещь в том плане что ты в одном месте можеш описать весь ход работы
ну или как то так
0
|
|
|
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
|
|
| 29.07.2016, 21:03 | |
|
0
|
|
|
0 / 0 / 1
Регистрация: 17.12.2013
Сообщений: 66
|
|
| 30.07.2016, 00:12 | |
|
Ну если вы из за на писание смеетесь
![]() Я просто столкнулся с ООП и решил изучить все что касается этого делать, что бы хотя бы иметь представление о том что это и как оно может быть полезно. Просто раньше этого небыло нужды делать, сейчас как говориться пока не припечет.. не займешься.
0
|
|
|
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
|
||
| 30.07.2016, 00:34 | ||
|
Не по теме: Нет, неправильного написания я даже не заметил, если честно.
0
|
||
|
0 / 0 / 1
Регистрация: 17.12.2013
Сообщений: 66
|
|
| 30.07.2016, 01:15 | |
|
А, понял к чему вы, ООП и есть инкапсуляция ?
Я просто смотрел видео уроки, и там было все в такой последовательностьи, 1.Классы 2.Наследование 3.Инкапсуляция 4.Полифоризм 5.Абстракция Только что посмотрел, действительно там было написанно Наследование/Инкапсуляция, т.е этот урок я прошел ! ошибся, просто там про говорилось мельком.. оказывается я понял что это, это закрытый обьек к который выполняет теневые задачи можно сказать и выдает результат
0
|
|
|
0 / 6 / 0
Регистрация: 10.04.2016
Сообщений: 66
|
|
| 30.07.2016, 21:36 | |
|
pav1uxa, Ну как-то наверное так:
1) человек взял книгу про ООП 2) прочитал раздел где объясняется про классы и объекты, переменные и свойства, функции и методы 3) прочитал еще один раздел, где описывается наследование (возможно даже полиморфизм в этом контексте) 4) дошел до раздела инкапсуляция 5)еще не прочитал его:-)
0
|
|
|
1943 / 1768 / 825
Регистрация: 23.01.2014
Сообщений: 6,230
|
||
| 31.07.2016, 00:20 | ||
|
Не по теме: "Человек" понял что я имел ввиду. А вот Вы - нет. Вам бы не помешало самому "взять книгу про ООП" :)
0
|
||
| 31.07.2016, 00:20 | |
|
Помогаю со студенческими работами здесь
17
Пояснение пояснение к коду Пояснение к коду Пояснение к скрипту Пояснение кода Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 30.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
|
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO
Апнулись до NET10.
Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта
так и в интерактивном режиме. из сложностей - чисто функциональный подход.
Решил. . .
|
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2.
Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники".
В. . .
|
Настройка движения справочника по регистру сведений
Maks 29.03.2026
Решение ниже реализовано на примере нетипового справочника "ТарифыМобильнойСвязи" разработанного в конфигурации КА2, с целью учета корпоративной мобильной связи в коммерческом предприятии.
. . .
|
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|