cloudcreativity / utils-collection
Our standard class for handling lists in PHP.
Installs: 278
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 1
Open Issues: 0
pkg:composer/cloudcreativity/utils-collection
Requires
- php: >=5.6.4
- ext-json: *
Requires (Dev)
- phpunit/phpunit: ^5.7|^7.0
This package is auto-updated.
Last update: 2025-10-17 03:54:26 UTC
README
cloudcreativity/utils-collection
Our standard collection class for handling lists in PHP. By lists, we mean numerically indexed arrays.
This package also contains our StandardIteratorInterface. We use this if we
are writing specific collection classes that hold only particular types of
objects.
License
Apache License (Version 2.0). Please see License File for more information.
Contributing
File an issue, or ideally submit a pull request. Bug fixes should be submitted against the master branch,
new features/changes should be submitted against the develop branch. Pull requests should have updated or new
unit tests in them.
Make sure your IDE has an EditorConfig plugin installed.
Testing
Clone the repository, then:
composer up vendor/bin/phpunit
Collection
The CloudCreativity\Utils\Collection\Collection is a standard class for
handling numerically indexed lists. It comes with the following methods.
Modifiers
The following methods modify the list contained within the collection:
addaddStrictaddObjectsclearfillfillObjectinsertAtpoppushpushObjectsremoveremoveAtremoveStrictreplaceshiftunshiftunshiftObjects
Accessors
The following methods give access to items within the collection:
firstitemAtlast
Querying
The following methods can be used to assess or query the contents of the collection;
anycontainscontainsStrictequalsequalsStricteveryindexOfindexOfStrictisEmptyisNotEmptysearchsearchStrict
Helpers
The following methods assist with handling the list, and return new instances of the collection. (I.e. the original collection is not modified.)
allcast(static)chunkcompactcopycountcreate(static)diffeachfilterimplodeintersectinvokeitemsAtmappadreducerejectreplicatereverseslicesortsynctaketapuniqueuniqueStrictwithoutwithoutStrict