olivebbs / map
Generic map for PHP
1.1.5
2025-09-24 15:36 UTC
Requires
- php: >=8.3
- php-ds/php-ds: ^1.7
Requires (Dev)
- phpunit/phpunit: ^12.3
Suggests
- ext-ds: To use the Data structure extension instead of polyfill.
README
Very simple typed map class.
Includes IntCharMap and CharMap as examples. It is best to extend Olivebbs\Map\GenericMap for your uses.
Example
use Olivebbs\Map\GenericMap;
use Olivebbs\Map\Enum\ValueType;
use Olivebbs\Map\Enum\KeyType;
final class MyStringMap extends GenericMap
{
public function __construct(array $values)
{
parent::__construct(KeyType::STRING, ValueType::STRING);
$this->map->putAll($values);
}
}
or
use Olivebbs\Map\GenericMap;
use Olivebbs\Map\Enum\ValueType;
use Olivebbs\Map\Enum\KeyType;
$myIntMap = new GenericMap(KeyType::INT, ValueType::INT);
Then use it.
$myIntMap[0] = 500;
unset($myIntMap[0]) // null