Как мы это называем? - PullRequest
10 голосов
/ 27 мая 2010

Мне интересно, что мы называем такого рода заданиями.

<?php
class SimpleClass
{
    public $var1;
    public $var2;
    public $var3;

    public function SimpleClass()
    {
        $this->var1 = 'one';
        $this->var2 = 'two';
        $this->var3 = 'three';
    }
}

function test()
{
    $objSc = new SimpleClass();
    $objSc->var4 = 'WTF?!'; # <-- what do we call this?
    var_dump($objSc);
}

test();
?>

Лучше со ссылками или ссылками. Заранее спасибо!

РЕДАКТИРОВАТЬ: Я ищу технический термин для этого ... ну, если у нас есть.

Ответы [ 3 ]

10 голосов
/ 27 мая 2010

Я считаю, что это перегрузка.

Перегрузка в PHP предоставляет средства для динамического «создания» свойств и методов. Эти динамические объекты обрабатываются с помощью магических методов, которые можно установить в классе для различных типов действий.

Методы перегрузки вызываются при взаимодействии со свойствами или методами, которые не были объявлены или не видны в текущей области.

Справочник по PHP здесь .

2 голосов
/ 27 мая 2010

Это назначение строки WTF?! переменной общего доступа SimpleClass. Если вы var_dump это, он показывает вывод правильно как:

string(5) "WTF?!"

И, как указал @marcdev, это известно как перегрузка .

1 голос
/ 27 мая 2010

Вы устанавливаете независимое свойство объекта $objSc.

...