Каков будет размер класса, если какая-либо переменная будет добавлена ​​динамически? - PullRequest
0 голосов
/ 22 февраля 2011

Мы можем добавить любую переменную к классу динамически в php.

Как повлияет размер (память) класса при динамическом сложении?

class test
{
public $a;
private $b;

function func1(){...}
}


$obj = new test();
$obj->c ="some value"; 

Каким будет размер $ obj?

1 Ответ

0 голосов
/ 22 февраля 2011

Размер объекта в памяти будет зависеть от содержимого переменной, которую вы добавляете.Феликс уже ответил на это, так что я просто собираюсь использовать его ответ:


$a = new C();

print memory_get_usage() . PHP_EOL; 
$a->foo = "bar"; 
print memory_get_usage();

отпечатков

43100
43308

Конечно, вашему сценарию требуется больше памяти, поскольку вы используете больше данных.Однако это не влияет на сам класс, так как вы добавляете свойство к экземпляру класса.


Если он решит восстановить свой ответ, я призываю вас принять его, а не мой: -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...