Я задаюсь вопросом, что мы называем этим видом присвоения.
<?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();
?>
Лучше со ссылками или ссылками.Заранее спасибо!
Править: Я ищу технический термин для него... хорошо, если мы имеем.
Я считаю, что это перегрузка.
Перегрузка в PHP предоставляет средства для динамического "создания" свойств и методов. Эти динамические сущности обрабатываются с помощью магических методов, которые можно установить в классе для различных типов действий.
Методы перегрузки вызываются при взаимодействии со свойствами или методами, которые не были объявлены или не видны в текущей области видимости.
Ссылка на руководство PHP здесь
Это присвоение строки WTF ?!
в общедоступную переменную области видимости SimpleClass
. Если вы var_dump
, он показывает вывод правильно как:
string(5) "WTF?!"
И, как указал @marcdev, это известно как перегрузка .
Вы устанавливаете независимое свойство объекта $objSc
.