CollectionTrait
trait CollectionTrait
Access Deeply nested manager items through magic methods
MUST be used with ManagesItemsTrait
Traits
Properties
static | $RETURN_ARRAY | ||
static | $RETURN_COLLECTION | ||
static | $MODIFY_MANIFEST | ||
bool | $useCollections | Configuration: do we want to return Collections from get() and getAll()? |
Methods
Initializes a new manager instance.
Hydrate with external data, optionally append
Push a value or values onto the end of an array inside manager
Get a single item
Return an item if it exist Alias of getIfExists()
Confirm or deny that an item exists Alias of exists()
Reset the manager with an array of items Alias of initManager()
When manager instance is used as a string, return json of items
Converts an array to a collection if value is arrayable and config is set
Does this instance want collections returned from get() and getAll()?
Invokes when calling a method on the Collection API
Details
in DependsOnManagesItemsTrait at line line 15
abstract $this
initManager(array $items = null)
Initializes a new manager instance.
This is useful for implementations that have their own __construct method This is an alias for reset()
in DependsOnManagesItemsTrait at line line 24
abstract $this
hydrate($data, bool $append = false)
Hydrate with external data, optionally append
in DependsOnManagesItemsTrait at line line 35
abstract $this
add(string $alias, mixed $item = null)
Adds a single item.
Allow for dot notation (one.two.three) and item nesting.
in DependsOnManagesItemsTrait at line line 45
abstract $this
set(string $alias, null $item = null)
Updates an item
in DependsOnManagesItemsTrait at line line 55
abstract int
push(string $alias, mixed $value, null|mixed $other = null)
Push a value or values onto the end of an array inside manager
in DependsOnManagesItemsTrait at line line 65
abstract mixed
get(string $alias, string $fallback = '_michaels_no_fallback')
Get a single item
in DependsOnManagesItemsTrait at line line 72
abstract NoItemFoundMessage
getIfExists($alias)
Return an item if it exist
in DependsOnManagesItemsTrait at line line 81
abstract NoItemFoundMessage
getIfHas($alias)
Return an item if it exist Alias of getIfExists()
in DependsOnManagesItemsTrait at line line 88
abstract array
getAll()
Return all items as array
in DependsOnManagesItemsTrait at line line 95
abstract array
all()
Return all items as array Alias of getAll()
in DependsOnManagesItemsTrait at line line 103
abstract bool
exists($alias)
Confirm or deny that an item exists
in DependsOnManagesItemsTrait at line line 112
abstract bool
has($alias)
Confirm or deny that an item exists Alias of exists()
in DependsOnManagesItemsTrait at line line 118
abstract boolean
isEmpty()
Confirm that manager has no items
in DependsOnManagesItemsTrait at line line 126
abstract $this
remove($alias)
Deletes an item
in DependsOnManagesItemsTrait at line line 132
abstract $this
clear()
Clear the manager
in DependsOnManagesItemsTrait at line line 141
abstract mixed
reset(array $items)
Reset the manager with an array of items Alias of initManager()
in DependsOnManagesItemsTrait at line line 149
abstract string
toJson(int $options)
Get the collection of items as JSON.
in DependsOnManagesItemsTrait at line line 155
abstract string
__toString()
When manager instance is used as a string, return json of items
at line line 36
ArrayImitator
toCollection($value)
Converts an array to a collection if value is arrayable and config is set
at line line 49
bool
wantsCollections()
Does this instance want collections returned from get() and getAll()?
at line line 69
mixed
__call(string $method, array $arguments)
Invokes when calling a method on the Collection API
This method simply decides how to handle the method call.
1. The class is using the ChainsNestedItemsTrait and Collection API does NOT contain the method
Let ChainsNestedItemsTrait
do its thing
2. The Collection API DOES contain the method
Pass the method call along to the third party Collection API
3. The method does not exist on the class or in the Collection API
Throw an Exception