silencenjoyer / silence-collection
A collection for storing data in a structured and typed form.
Requires
- php: ^8.3.0
Requires (Dev)
- phpstan/phpstan: *
- phpunit/phpunit: ^12.2
- shipmonk/composer-dependency-analyser: ^1.8
- symfony/var-dumper: ^7.3
README
A collection for storing data in a structured and typed form, supplied as a component of the Silence PHP framework.
BaseCollection class is a generic, strongly-typed collection implementation in PHP. It provides a convenient and consistent interface for working with arrays as objects and supports array-like access, iteration, and other common operations.
This package is part of the monorepository silencenjoyer/silence, but can be used independently.
โ๏ธ Installation
composer require silencenjoyer/silence-collection
๐ Quick start
$collection = new BaseCollection(); $collection->set('test', new stdClass()); $collection->set('test_2', new stdClass()); $collection->count(); // 2
๐งฑ Features:
- Generic Support
- Array-Like Behavior
- Iterable
- Countable
๐งช Testing
php vendor/bin/phpunit
๐งฉ Use in the composition of Silence
The package is used as the strongly-typed collection with generic support within the Silence ecosystem.
If you are writing your own package, you can connect silencenjoyer/silence-collection
for storing data in a structured and typed form.
๐ License
This package is distributed under the MIT licence. For more details, see LICENSE.