PHP - Funzioni mappa

La mappa è una raccolta sequenziale di coppie chiave-valore, quasi identica a un array utilizzato in un contesto simile. Le chiavi possono essere di qualsiasi tipo ma devono essere univoche e i valori vengono sostituiti se aggiunti alla mappa utilizzando la stessa chiave.

Punti di forza

  • Chiavi e valori possono essere di qualsiasi tipo, inclusi gli oggetti.
  • Supporta la sintassi degli array (parentesi quadre).
  • L'ordine di inserzione viene mantenuto.
  • Le prestazioni e l'efficienza della memoria sono molto simili a un array.
  • Libera automaticamente la memoria allocata quando le sue dimensioni si riducono abbastanza.

Debolezze

  • Non può essere convertito in un array quando gli oggetti vengono utilizzati come chiavi.

Sintassi

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 )
}

Costanti predefinite

Ds \ Map :: MIN_CAPACITY

Suor n Descrizione della funzione
1

Funzione Ds \ Map :: allocate ()

Questa funzione può allocare memoria sufficiente per la capacità richiesta.

2

Funzione Ds \ Map :: apply ()

Questa funzione può aggiornare aggiornare tutti i valori applicando una funzione di callback a ciascun valore.

3

Funzione Ds \ Map :: capacity ()

Questa funzione può restituire la capacità corrente.

4

Funzione Ds \ Map :: clear ()

Questa funzione può rimuovere rimuovere tutti i valori.

5

Funzione Ds \ Map :: copy ()

Questa funzione può restituire la copia superficiale di una mappa.

6

Funzione Ds \ Map :: count ()

Questa funzione può restituire il numero di valori in una mappa.

7

Funzione Ds \ Map :: diff ()

Questa funzione può creare una nuova mappa utilizzando i tasti che non sono in un'altra mappa.

8

Funzione Ds \ Map :: filter ()

Questa funzione può creare una nuova mappa utilizzando un callable per determinare quali coppie includere.

9

Funzione Ds \ Map :: first ()

Questa funzione può restituire la prima coppia in una mappa.

10

Funzione Ds \ Map :: get ()

Questa funzione può restituire il valore per una determinata chiave.

11

Funzione Ds \ Map :: hasKey ()

Questa funzione può determinare se la mappa contiene una determinata chiave.

12

Funzione Ds \ Map :: hasValue ()

Questa funzione può determinare se la mappa contiene un determinato valore.

13

Funzione Ds \ Map :: intersect ()

Questa funzione può creare una nuova mappa intersecando i tasti con un'altra mappa.

14

Funzione Ds \ Map :: isEmpty ()

Questa funzione può restituire return se la mappa è vuota.

15

Funzione Ds \ Map :: jsonSerialize ()

Questa funzione può restituire una rappresentazione che può essere convertita in JSON.

16

Funzione Ds \ Map :: keys ()

Questa funzione può restituire il set di chiavi della mappa.

17

Funzione Ds \ Map :: ksort ()

Questa funzione può ordinare la mappa sul posto per chiave.

18

Funzione Ds \ Map :: ksorted ()

Questa funzione può restituire una copia, ordinata per chiave.

19

Funzione Ds \ Map :: last ()

Questa funzione può restituire l'ultima coppia di una mappa.

20

Funzione Ds \ Map :: map ()

Questa funzione può restituire il risultato dell'applicazione di un callback a ciascun valore.

21

Funzione Ds \ Map :: merge ()

Questa funzione può restituire il risultato dell'aggiunta di tutte le associazioni date.

22

Funzione Ds \ Map :: pair ()

Questa funzione può restituire una sequenza contenente tutte le coppie della mappa.

23

Funzione Ds \ Map :: put ()

Questa funzione può associare una chiave a un valore.

24

Funzione Ds \ Map :: putAll ()

Questa funzione può associare tutte le coppie chiave-valore di oggetti o array attraversabili.

25

Funzione Ds \ Map :: reduce ()

Questa funzione può ridurre la mappa a un singolo valore utilizzando una funzione di callback.

26

Funzione Ds \ Map :: remove ()

Questa funzione può rimuovere e restituire un valore tramite chiave.

27

Funzione Ds \ Map :: reverse ()

Questa funzione può invertire la mappa sul posto.

28

Funzione Ds \ Map :: reversed ()

Questa funzione può restituire una copia inversa.

29

Funzione Ds \ Map :: skip ()

Questa funzione può restituire la coppia a un dato indice di posizione.

30

Funzione Ds \ Map :: slice ()

Questa funzione può restituire un sottoinsieme della mappa definita dall'indice iniziale e dalla lunghezza.

31

Funzione Ds \ Map :: sort ()

Questa funzione può ordinare la mappa sul posto in base al valore.

32

Funzione Ds \ Map :: Sort ()

Questa funzione può restituire una copia ordinata per valore.

33

Funzione Ds \ Map :: sum ()

Questa funzione può restituire la somma di tutti i valori in una mappa.

34

Funzione Ds \ Map :: toArray ()

Questa funzione può convertire una mappa in un array.

35

Funzione Ds \ Map :: union ()

Questa funzione può creare una nuova mappa utilizzando i valori dell'istanza corrente e un'altra mappa.

36

Funzione Ds \ Map :: values ​​()

Questa funzione può restituire una sequenza dei valori della mappa.

37

Funzione Ds \ Map :: xor ()

Questa funzione può creare una nuova mappa utilizzando i tasti dell'istanza corrente o di un'altra mappa, ma non di entrambi.