PHP - Funciones de mapa

El mapa es una colección secuencial de pares clave-valor, casi idéntica a una matriz utilizada en un contexto similar. Las claves pueden ser de cualquier tipo, pero deben ser únicas, y los valores se reemplazan si se agregan al mapa utilizando la misma clave.

Fortalezas

  • Las claves y los valores pueden ser de cualquier tipo, incluidos los objetos.
  • Admite la sintaxis de matriz (corchetes).
  • Se conserva el orden de inserción.
  • El rendimiento y la eficiencia de la memoria son muy similares a los de una matriz.
  • Libera automáticamente la memoria asignada cuando su tamaño desciende lo suficiente.

Debilidades

  • No se puede convertir en una matriz cuando los objetos se utilizan como claves.

Sintaxis

Ds\Map implements Ds\Collection {
   /* Constants */   
   
   const int MIN_CAPACITY = 16 ;
   /* Methods */
   
   public void allocate( int $capacity )
   public void apply( callable $callback )
   public int capacity( void )
   public void clear( void )
   public Ds\Map copy( void )
   public Ds\Map diff( Ds\Map $map )
   public Ds\Map filter([ callable $callback ] )
   public Ds\Pair first( void )
   public mixed get( mixed $key [, mixed $default ] )
   public bool hasKey( mixed $key )
   public bool hasValue( mixed $value )
   public Ds\Map intersect( Ds\Map $map )
   public bool isEmpty( void )
   public Ds\Set keys( void )
   public void ksort([ callable $comparator ] )
   public Ds\Map ksorted([ callable $comparator ] )
   public Ds\Pair last( void )
   public Ds\Map map( callable $callback )
   public Ds\Map merge( mixed $values )
   public Ds\Sequence pairs( void )
   public void put( mixed $key , mixed $value )
   public void putAll( mixed $pairs )
   public mixed reduce( callable $callback [, mixed $initial ] )
   public mixed remove( mixed $key [, mixed $default ] )
   public void reverse( void )
   public Ds\Map reversed( void )
   public Ds\Pair skip( int $position )
   public Ds\Map slice int $index [, int $length ] )
   public void sort([ callable $comparator ] )
   public Ds\Map sorted([ callable $comparator ] )
   public number sum( void )
   public array toArray( void )
   public Ds\Map union( Ds\Map $map )
   public Ds\Sequence values( void )
   public Ds\Map xor( Ds\Map $map )
}

Constantes predefinidas

Ds \ Map :: MIN_CAPACITY

No Señor Función descriptiva
1

Función Ds \ Map :: allocate ()

Esta función puede asignar suficiente memoria para la capacidad requerida.

2

Función Ds \ Map :: apply ()

Esta función puede actualizar todos los valores aplicando una función de devolución de llamada a cada valor.

3

Función Ds \ Map :: capacity ()

Esta función puede devolver la capacidad actual.

4

Función Ds \ Map :: clear ()

Esta función puede eliminar eliminar todos los valores.

5

Función Ds \ Map :: copy ()

Esta función puede devolver la copia superficial de un mapa.

6

Función Ds \ Map :: count ()

Esta función puede devolver el número de valores en un mapa.

7

Función Ds \ Map :: diff ()

Esta función puede crear un nuevo mapa utilizando teclas que no están en otro mapa.

8

Función Ds \ Map :: filter ()

Esta función puede crear un nuevo mapa utilizando un invocable para determinar qué pares incluir.

9

Función Ds \ Map :: first ()

Esta función puede devolver el primer par en un mapa.

10

Función Ds \ Map :: get ()

Esta función puede devolver el valor de una clave determinada.

11

Función Ds \ Map :: hasKey ()

Esta función puede determinar si el mapa contiene una clave determinada.

12

Función Ds \ Map :: hasValue ()

Esta función puede determinar si el mapa contiene un valor dado.

13

Función Ds \ Map :: intersect ()

Esta función puede crear un nuevo mapa mediante la intersección de teclas con otro mapa.

14

Función Ds \ Map :: isEmpty ()

Esta función puede devolver el retorno si el mapa está vacío.

15

Función Ds \ Map :: jsonSerialize ()

Esta función puede devolver una representación que se puede convertir a JSON.

dieciséis

Función Ds \ Map :: keys ()

Esta función puede devolver el conjunto de claves del mapa.

17

Función Ds \ Map :: ksort ()

Esta función puede ordenar el mapa en el lugar por clave.

18

Función Ds \ Map :: ksorted ()

Esta función puede devolver una copia, ordenada por clave.

19

Función Ds \ Map :: last ()

Esta función puede devolver el último par de un mapa.

20

Función Ds \ Map :: map ()

Esta función puede devolver el resultado de aplicar una devolución de llamada a cada valor.

21

Función Ds \ Map :: merge ()

Esta función puede devolver el resultado de agregar todas las asociaciones dadas.

22

Función Ds \ Map :: pares ()

Esta función puede devolver una secuencia que contenga todos los pares del mapa.

23

Función Ds \ Map :: put ()

Esta función puede asociar una tecla con un valor.

24

Función Ds \ Map :: putAll ()

Esta función puede asociar todos los pares clave-valor de objeto o matriz atravesable.

25

Función Ds \ Map :: reduce ()

Esta función puede reducir el mapa a un solo valor mediante una función de devolución de llamada.

26

Función Ds \ Map :: remove ()

Esta función puede eliminar y devolver un valor por tecla.

27

Función Ds \ Map :: reverse ()

Esta función puede revertir el mapa en el lugar.

28

Función Ds \ Map :: reversed ()

Esta función puede devolver una copia invertida.

29

Función Ds \ Map :: skip ()

Esta función puede devolver el par en un índice posicional dado.

30

Función Ds \ Map :: slice ()

Esta función puede devolver un subconjunto del mapa definido por el índice inicial y la longitud.

31

Función Ds \ Map :: sort ()

Esta función puede ordenar el mapa in situ por valor.

32

Función Ds \ Map :: sorted ()

Esta función puede devolver una copia ordenada por valor.

33

Función Ds \ Map :: sum ()

Esta función puede devolver la suma de todos los valores en un mapa.

34

Función Ds \ Map :: toArray ()

Esta función puede convertir un mapa en una matriz.

35

Función Ds \ Map :: union ()

Esta función puede crear un nuevo mapa utilizando valores de la instancia actual y otro mapa.

36

Función Ds \ Map :: values ​​()

Esta función puede devolver una secuencia de valores del mapa.

37

Función Ds \ Map :: xor ()

Esta función puede crear un nuevo mapa utilizando las teclas de la instancia actual o de otro mapa, pero no de ambos.