Для чего предназначен $ это ключевое слово? - PullRequest
1 голос
/ 02 апреля 2012

Пожалуйста, объясните мне, что означает $this и -> ... давайте рассмотрим пример следующего кода ...

$this->convertNamesToCaptions($order, $formId)

Ответы [ 6 ]

13 голосов
/ 02 апреля 2012

$ это относится к текущему объекту

Руководство говорит:

Псевдопеременная $ this доступна, когда метод вызывается из контекста объекта. $ это ссылка на вызывающий объект (обычно это объект, к которому относится метод, но, возможно, другой объект, если метод вызывается статически из контекста вторичного объекта).

Маленький пример:

class Test
{
    private $var;

    public function func()
    {
        $this->var = 1;
        return $this->var;
    }
}

$obj = new Test();

$obj->func();
5 голосов
/ 02 апреля 2012

Итак, просто:

  • $this относится к текущему экземпляру объекта
  • -> указывает, что часть справа является методом объекта

Другими словами:

$this->doSth() означает: метод запуска doSth того же объекта.

5 голосов
/ 02 апреля 2012

$this - ссылка на текущий объект внутри кода этого объекта.

Более подробную информацию вы найдете в Основах PHP OOP .

2 голосов
/ 02 апреля 2012

Я думаю, что на этой странице все сказано: http://php.net/manual/en/language.oop5.basic.php

"Псевдопеременная $ this доступна, когда метод вызывается из контекста объекта. $ Это ссылка на вызывающий объект (обычно это объект, к которому принадлежит метод, но, возможно, другой объект, если метод вызывается статически из контекста вторичного объекта). "

в нескольких словах это вызывающий объект .

2 голосов
/ 02 апреля 2012

$this содержит ссылку на выбранный используемый объект, -> - оператор, используемый для назначения метода или свойства для ссылки на объект.

0 голосов
/ 12 июня 2015

$ это указатель, который указывает на текущий объект, а -> оператор, используемый для присвоения значения объекту с правой стороны.

...