TGViewer
Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter Библиотека пхпшника | PHP, Laravel, Symfony, CodeIgniter @phpproglib · 10.5K subscribers
Post #4013 3.45K
Использование памяти массива, классов и анонимных классов

🧪 В проведенных тестах сравнения эффективности использования памяти и производительности массивов и классов в PHP выявлены интересные результаты:

📊 В первом эксперименте, где создавались массивы и классы до исчерпания памяти, выяснилось, что классы демонстрируют более эффективное использование памяти. В частности, stdClass имела наименьший расход памяти, за ней следовали анонимные классы и классы с именами.

🔄 Также были проанализированы результаты на различных версиях PHP, выявив, что массивы становятся все более эффективными с появлением новых версий. В то время как классы сохраняют стабильность в отношении ресурсов, с небольшим увеличением использования памяти в PHP 8.2 из-за отсутствия динамических свойств.

⏱️ Во втором тесте, измерившем время доступа к значениям в массивах и объектах, обнаружено, что различия незначительны. Хотя производительность ассоциативных массивов оказалась немного ниже, эта разница была минимальна при миллионе итераций.

🔍 В итоге был сделан вывод, что классы обладают более эффективным использованием памяти по сравнению с массивами, что сопровождается улучшенной общей производительностью. Важно отметить, что различия в производительности являются микрооптимизациями. Однако несмотря на эффективность использования памяти классов, выделено моменты, когда массивы могут оставаться предпочтительными, особенно при стоимости преобразования, например, при работе с результатами баз данных или структурами JSON, где широко используются ассоциативные массивы.
  • 🥱 4
  • 👍 3
  • ❤ 1
More from @phpproglib
  1. Oct 2, 2026🎹 Что делать после ChatGPT? Следующий шаг — AI-агенты. Они не просто отвечают на запросы,…
  2. Sep 30, 2026🔥 Последний день для разработчиков AI уже пишет код. Теперь важнее научиться встраивать е…
  3. Sep 30, 2026🐸 Библиотека пхпшника
  4. Sep 29, 2026💡 Laravel-фича, которая спасает тесты от случайных запросов Http::preventStrayRequests()…
  5. Sep 28, 2026🔐 ramsey/uuid — UUID без самописного кода Библиотека помогает генерировать, парсить и вал…
  6. Sep 28, 2026🤔 Что выведет код? ❤️ — 1 🔥 — 2 👍 — 12 👾 — Fatal error 👇 Правильный ответ (нажми, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →