У меня на операционном столе объект wrap (в рамках процедуры рефакторинга)
wrap = 337.4 KБ
=================
structure = 15.57 КБ
before = 21.21 КБ
after = 42.67 КБ
id = 0 КБ
class_name = 0 КБ
display = 0.01 КБ
tmpl_folder = 0.04 КБ
users_tmpl_folder = 0.04 КБ
theme = 0.01 КБ
title = 0 КБ
comment = 0 КБ
name = 0 КБ
description = 0 КБ
width = 0 КБ
height = 0 КБ
active = 0 КБ
visible = 0 КБ
================
Всего = 79.55 KБ
Где
- wrap = 337.5 KБ - объём занимаемой памяти объекта(замерялся методом съёма memory_get_usage до и после создания)
- structure = 15.57 КБ и нижеследующие - длинна «сериализованного»(через print_r) параметра structure этого объекта
- Всего = 79.55 KБ - общий объём сериализованных атрибутов объекта
Вопрос: куда делись 250 КБ? Неужели в PHP для служебных структур используется СТОЛЬКО памяти? Или там память из под временных переменных по выходу из функций не освобождается?
Кстати, вот пример других таких обжектов
banners = 20.1 KБ
=====================
banners = 5.18 КБ
structure = 1.59 КБ
before = 0.01 КБ
after = 0.01 КБ
id = 0.01 КБ
class_name = 0.01 КБ
display = 0.01 КБ
tmpl_folder = 0.05 КБ
users_tmpl_folder = 0.04 КБ
theme = 0.01 КБ
title = 0 КБ
comment = 0 КБ
name = 0 КБ
description = 0 КБ
width = 0 КБ
height = 0 КБ
active = 0 КБ
visible = 0 КБ
=====================
Всего = 6.92 KБ
logo = 2.9 KБ
======================
src = 0 КБ
title = 0.01 КБ
alt = 0.01 КБ
url = 0 КБ
width = 0 КБ
height = 0 КБ
structure = 0.13 КБ
before = 0.01 КБ
after = 0.01 КБ
id = 0.01 КБ
class_name = 0 КБ
display = 0.01 КБ
tmpl_folder = 0.04 КБ
users_tmpl_folder = 0.04 КБ
theme = 0.01 КБ
comment = 0 КБ
name = 0 КБ
description = 0 КБ
active = 0 КБ
visible = 0 КБ
=======================
Всего = 0.29 KБ
То есть соотношение «стибренного» примерно сохраняется.
Как вы уже догадались, все они потомки обхего родителя.