@mrFlyer

Как коллекции возвращают аттрибут items в foreach?

Добрый день.

Объясните принцип работы простого примера:
$collection = collect(["a","b","c"]);

        foreach ($collection as $value){
            echo $value; // a b c
        }

Т.е. тут создается объект Collection и у него атрибут items, который является массивом.
Как данный массив передается в foreach?

Я к тому, что если сделать свой CustomObject (не коллекцию) и передать туда такие же данные в items, то foreach будет работать с инстансом CustomObject. Т.е. данный объект как то должен вернуть items для цикла ... а вот как это делается не пойму.

Я так понимаю это некие азы ООП пхп, но что то я проморгал этот момент явно.
  • Вопрос задан
  • 91 просмотр
Решения вопроса 1
JhaoDa
@JhaoDa
LaravelRUS Team
Да, проморгал — IteratorAggregate. Ещё можно открыть класс коллекции и увидеть.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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