[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: $this
Страницы: 1, 2, 3
Boshop
Единственно что я не понял в php это что делает переменная $this. для чего она нужна? что она делает?
Игорь_Vasinsky
это в ООП, я даже не могу подобрать определение) указатель вообщем))

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Boshop
Цитата (Игорь_Vasinsky @ 27.10.2012 - 18:32)
это в ООП, я даже не могу подобрать определение) указатель вообщем))

Попробуйте хоть как то это обьяснить. Этот как в си указатель на класс в котором вызван или что то другое?
Invis1ble
ссылка на текущий объект
читаем мануал, не задаем детских вопросов wink.gif

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

Boshop
Цитата (Invis1ble @ 27.10.2012 - 18:59)
ссылка на текущий объект
читаем мануал, не задаем детских вопросов wink.gif

Спасибо
Invis1ble
Да, кстати, непонятно, каким боком тема относится к C++ smile.gif

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

twin
Цитата (Invis1ble @ 27.10.2012 - 18:59)
ссылка на текущий объект
читаем мануал, не задаем детских вопросов  ;)

Это недецкий вопрос))) Я до сих пор помню тот ужас, который испытывал когда-то при виде в коде этого безобразия со стрелочкой :) А чуть раньше такой же кошмар был с тернарниками...

Вся беда в том, что тут изначально исковеркана суть. This переводится как "это". Что "это"? Если бы назвали $local (местная) было бы куда понятнее.

Просто стоило перевести, и все встало бы на свои места:

class Example // класс Пример
{
public function __construction() // общедоступная функция __конструктор()
{
// $this -> var; // $это -> переменная;
$local -> var; // $местная -> переменная;

$obj = new Аnother_Class; // $объект = новый ДругойКласс();
$obj -> var; // $объекта -> переменная;

}
}


Я теперь из=за этого программирования this в миру перевожу как "здесь" , а не как "это". :angry:

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
Invis1ble
this используется во многих ЯП, так что спорно.

_____________

Профессиональная разработка на заказ

Я на GitHub | второй профиль

johniek_comp
Invis1ble
обычно self, в python например

_____________
user posted image
twin
Цитата (Invis1ble @ 28.10.2012 - 04:18)
this используется во многих ЯП, так что спорно.

Что спорно? В каком языке this ссылается на сторонний объект? Может я чего упустил...
johniek_comp
Цитата
обычно self, в python например
self и в PHP есть. Но это немного другое. Это принадлежность к классу, а не указатель на объект.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
johniek_comp
twin
а в python одно и тоже
Свернутый текст
class test(object):
def __init__(self,param1,param2):
self.param1 = param1
self.param2 = param2

def getParam(self):
return self.param1,self.param2


obj = test(1,2)
print obj.getParam()


выведет 1 2




_____________
user posted image
vasa_c
this - этот. этот объект.
причём тут "здесь"?

_____________
Блог ГО | Таблица символов Юникода | Графомания
bodja
Цитата
Что спорно? В каком языке this ссылается на сторонний объект? Может я чего упустил..

В JS может ссылаться. biggrin.gif
Точнее не может , а всегда когда мы пытаемся посесить событие на обьект.
Лично для себя this перевожу как текущий обьект.
twin
Разные интерпретации - издержки самообразования. Смотря какие ассоциации...
У меня всегда было так:
Свойство инициализировано где? Здесь. Или в объекте $odj.
Как то даже в голову не приходило наоборот, объект "этот", и свойство его. Есть логика конечно, глупо спорить))) Как про курицу и яйцо.

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

Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.

Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.

user posted image
bodja
Цитата
Разные интерпретации - издержки самообразования. Смотря какие ассоциации...

Ну если this сами интерпретаторы воспринимают по разному , то говорить про разные интерпретации в образовании или самообразовании , теряет всякий смысл. wink.gif biggrin.gif

this является указателем не локальной , а глобальной переменной в пределах этого класса , является статической и может быть доступной извне. Судьба локальной быть уничтоженой после отработки и недоступной извне.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.