sshilko / php-seids
Supplementary, Easily Interchangeable Data Structures for PHP 5. Provides alternatives and supplements to the Standard PHP Library (SPL) Datastructures.
Requires
- php: >=5.3.3
Requires (Dev)
- daniel-ac-martin/apidoc: 0.2.x
- phpunit/php-code-coverage: 2.0.x
- phpunit/phpunit: 4.6.x
- squizlabs/php_codesniffer: 2.3.x
This package is auto-updated.
Last update: 2022-11-05 15:20:43 UTC
README
- Added toJSON/fromJSON for priorityQueue (heap based)
- Added toArray/fromArray for priorityQueue (heap based)
PHP SEIDS provides drop-in replacements for the SPL Data Structure classes which offer alternative implementations and/or enhanced functionality.
The main features of this library are:
- An array-deque (only takes integer keys in a certain range, grows automatically from either end)
- An updatable pairing heap, with associated priority queue
A full list of classes as well as some simple tutorials on how to use the classes can be found in the manual.
The library has been designed so that it is very easy to switch between them and the original ones provided by the SPL. This means that if at some point in the future you no longer require the extra functionality they provide you can simply switch back to using the original SPL ones.
This is the initial release of this library which means it cannot be guaranteed to be bug free. That said, the library has passed its extensive unit test suite which has 100% code coverage (by line).
Note: The classes in this library are implemented directly in PHP, rather than C as the original SPL versions are. As such, they are not fast and should only be used when execution speed is not an issue or when the extra functionality they provide is absolutely required.
Getting started
- PHP 5.3.x is required
- Install PHP SEIDS using Composer (recommended) or manually
- Read the short tutorials to see how to use the library
License
Copyright (C) 2015 Daniel A.C. Martin
Distributed under the MIT License.