Что такое коллекции в php?
Коллекция - это хранилище каких либо объектов(данных), и без разницы какой язык программирования используете - суть коллекции от этого  не меняется. Самый простой вид коллекции который повсеместно используется - это массив, но нужно понимать что коллекции могут иметь разные реализации поэтому рекомендую для общего понимания почитать вот эту статью.
Это некий класс, похожий на массив чего-то определенного, но не совсем таковой.
Отличия от стандартных массивов:
- строгая типизация
- возможность привязать коллекцию к какому-либо объекту
например:$store = new Store();
/** @property $collection ItemCollection */
$store->collection->add(Item $item);
$store->collection->remove($item);
...
При этом коллекция должна реализовывать интерфейсы:
- IteratorAggregate (для возможности перебора)
- ArrayAccess(для доступа к элементу по индексу)
- Countable (для определения размерности)