La clase Map

(PECL ds >= 1.0.0)

Introducción

Un Map es una colección secuencial de pares clave-valor, casi identico a un array usado en un contexto similar. Las claves pueden ser de cualquier tipo, pero deben ser únicos. Los valores se reemplazan si se agregan al mapa usando la misma clave.

Fortalezas

  • Las claves y valores pueden ser de cualquer tipo, incluyendo objetos.
  • Soporta la sintaxis array (corchetes).
  • Se mantiene el orden de inserción.
  • El rendimiento y la eficiencia de memoria son muy similares al de un array.
  • Automáticamente libera la memoria asignada cuando su tamaño cae lo suficientemente bajo.

Debilidades

  • No puede ser convertido a un array cuando los objetos son usados como claves.

Sinopsis de la Clase

classDs\MapimplementsDs\Collection, ArrayAccess {
constintMIN_CAPACITY = 16;
publicallocate(int$capacity): void
publicapply(callable$callback): void
publiccapacity(): int
publicclear(): void
publiccopy(): Ds\Map
publicdiff(Ds\Map$map): Ds\Map
publicfilter(callable$callback = ?): Ds\Map
publicfirst(): Ds\Pair
publicget(mixed$key, mixed$default = ?): mixed
publichasKey(mixed$key): bool
publichasValue(mixed$value): bool
publicintersect(Ds\Map$map): Ds\Map
publicisEmpty(): bool
publickeys(): Ds\Set
publicksort(callable$comparator = ?): void
publicksorted(callable$comparator = ?): Ds\Map
publiclast(): Ds\Pair
publicmap(callable$callback): Ds\Map
publicmerge(mixed$values): Ds\Map
publicput(mixed$key, mixed$value): void
publicputAll(mixed$pairs): void
publicreduce(callable$callback, mixed$initial = ?): mixed
publicremove(mixed$key, mixed$default = ?): mixed
publicreverse(): void
publicreversed(): Ds\Map
publicskip(int$position): Ds\Pair
publicslice(int$index, int$length = ?): Ds\Map
publicsort(callable$comparator = ?): void
publicsorted(callable$comparator = ?): Ds\Map
publicsum(): int|float
publictoArray(): array
publicunion(Ds\Map$map): Ds\Map
publicxor(Ds\Map$map): Ds\Map
}

Constantes predefinidas

Ds\Map::MIN_CAPACITY

Historial de cambios

VersiónDescripción
PECL ds 1.3.0 La clase ahora implementa ArrayAccess.

Tabla de contenidos

To Top