}
Section 89.4: Collections PSR-5 proposes a form of Generics-style notation for collections. Generics Syntax Type[] Type<Type> Type<Type[, Type]...> Type<Type[|Type]...>
Values in a Collection MAY even be another array and even another Collection. Type<Type<Type>> Type<Type<Type[, Type]...>> Type<Type<Type[|Type]...>>
Examples <?php /** * @var ArrayObject<string> $name */ $name = new ArrayObject(['a', 'b']); /** * @var ArrayObject<int> $name */ $name = new ArrayObject([1, 2]); /** * @var */ $name = new new ]);
ArrayObject<stdClass> $name new ArrayObject([ stdClass(), stdClass()
/** * @var ArrayObject<string|int|stdClass|bool> $name */ $name = new ArrayObject([ 'a', true, 1, 'b', new stdClass(), 'c', 2 ]); /** * @var */ $name = new new ]);
ArrayObject<ArrayObject<int>> $name new ArrayObject([ ArrayObject([1, 2]), ArrayObject([1, 2])
GoalKicker.com â&#x20AC;&#x201C; PHP Notes for Professionals
405