Collections

@TODO review

Introduction

Collections in PyroCMS work exactly the same as collections in Laravel.

Basic Usage

PyroCMS comes with it's own \Anomaly\Streams\Platform\Support\Collection class that extends Laravel's base collection.

Collection::pad()

The pad method pads the items to assure the item array is a certain size.

Returns: $this

Arguments

Key Required Type Default Description

$size

true

integer

none

The size to pad the items to.

$value

false

mixed

null

The value to use for the pad items.

Example

$collection->pad(10, 'No item.');
Twig
{% for item in collection.pad(10, 'No item.') %}
    {{ item }}
{% endfor %}

Collection::skip()

The skip method is a shortcut alias for slice.

Returns: Collection

Arguments

Key Required Type Default Description

$offset

true

integer

none

The number of items to skip.

Example

$collection->skip(10);
Twig
{% for item in collection.skip(10) %}
    {{ item }}
{% endfor %}

Collection::__get()

The __get method has been mapped to try for an item otherwise calls the camel cased attribute method name.

Returns: mixed

Arguments

Key Required Type Default Description

$name

true

string

none

The index of the item to get or snake_case of the method to call.

Example

// A collection of people is keyed by snake case first name
$people->ryan_thompson->favorite_color;
Twig
{{ people.ryan_thompson.favorite_color }}