@Shimpanze

Как правильно работать с большим массивом: создавать новый или перезаписывать элементы старого?

Есть огромный массив данных, который в процессе работы с ним, полностью! перезаписывается.

Что выгоднее всего: удалять каждый элемент массива через unset(), а затем вставлять на его место новый элемент, или сразу создавать новый массив.

Что выгоднее с точки зрения экономии памяти и потребления ресурсов сервера?
  • Вопрос задан
  • 157 просмотров
Решения вопроса 1
@alexalexes
Выгоднее всего положить в базу данных, которая специализируется на ключ-значении данных, типа redis или memcached и там делать манипуляции - они на этом специализируются.
Если с массивом работать напрямую, то выгоднее изменять существующий массив, в изменяющие функции передавать массив по ссылке, следить, чтобы методы при изменении массива не создавали новый массив, а работали с существующим.
Будут провалы производительности у границ количества элементов кратные степени двойки (ссылка). Это плата за высокоуровневые фишки в виде ресайза массива, чего нет на низком уровне реализации интерпретатора PHP.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы