DK,
@cleargoal, затестил 4 метода: foreach, array_walk, array_map и collect из Лары.
1. foreach не изменяет родительский объект.
2. array_walk изменяет родительский объект.
3. array_map создаёт новый объект и возвращает его
4. коллекция)))
Код для теста:
https://pastebin.com/pWFxTAt2Результат на скрине.
Значения - это количество микросекунд на выполнение цикла.
Самый тормозной метод - collect.
Из пыхных - array_walk.
Самый шустрый - foreach.