Array PHP: associativo, multidimensionale
⚡ Riepilogo intelligente
Gli array PHP memorizzano molti valori correlati all'interno di un'unica variabile, semplificando il raggruppamento e l'elaborazione dei dati correlati. Questa guida illustra gli array numerici, associativi e multidimensionali, gli operatori di confronto tra array e le funzioni principali come count, sort, ksort e asort.

Cos'è un array PHP?
Un array PHP è una variabile che memorizza più di un dato correlato in una singola variabile.
Immagina un array come una scatola di cioccolatini con degli slot all'interno.
La casella rappresenta l'array stesso, mentre gli spazi contenenti i cioccolatini rappresentano i valori memorizzati nell'array.
Gli esempi seguenti illustrano come funziona.
Array numerici
Gli array numerici utilizzano i numeri come chiavi di accesso.
Una chiave di accesso è un riferimento a uno slot di memoria in una variabile di array.
La chiave di accesso viene utilizzata ogni volta che si desidera leggere o assegnare un nuovo valore a un elemento di un array.
Di seguito è riportata la sintassi per la creazione di un array numerico in PHP.
Esempio di matrice
<?php $variable_name[n] = value; ?>
Or
<?php
$variable_name = array(n => value, ...);
?>
QUI,
- “$nome_variabile…” è il nome della variabile
- “[n]” è il numero dell'indice di accesso dell'elemento
- “value” è il valore assegnato all'elemento dell'array.
Vediamo ora un esempio di array numerico.
Supponiamo di avere 5 film che vogliamo memorizzare in variabili di array.
Possiamo usare l'esempio mostrato di seguito per farlo.
<?php $movie[0] = 'Shaolin Monk'; $movie[1] = 'Drunken Master'; $movie[2] = 'American Ninja'; $movie[3] = 'Once upon a time in China'; $movie[4] = 'Replacement Killers'; ?>
Qui,
A ogni film viene assegnato un numero di indice che viene utilizzato per recuperare o modificare il suo valore. Osserva il codice seguente.
<?php $movie[0]="Shaolin Monk"; $movie[1]="Drunken Master"; $movie[2]="American Ninja"; $movie[3]="Once upon a time in China"; $movie[4]="Replacement Killers"; echo $movie[3]; $movie[3] = " Eastern Condors"; echo $movie[3]; ?>
Produzione:
Once upon a time in China Eastern Condors
Come puoi vedere dagli esempi precedenti, lavorare con gli array in PHP quando si ha a che fare con più valori della stessa natura è molto semplice e flessibile.
In alternativa, le variabili array sopra indicate possono essere create anche utilizzando il seguente codice.
<?php $movie = array(0 => "Shaolin Monk", 1 => "Drunken Master", 2 => "American Ninja", 3 => "Once upon a time in China", 4 => "Replacement Killers" ); echo $movie[4]; ?>
Produzione:
Replacement Killers
Array associativo PHP
Gli array associativi si differenziano dagli array numerici in quanto utilizzano nomi descrittivi per le chiavi ID.
Di seguito è riportata la sintassi per la creazione di un array associativo in PHP.
<?php $variable_name['key_name'] = value; $variable_name = array('keyname' => value); ?>
QUI,
- “$nome_variabile…” è il nome della variabile
- “['key_name']” è la chiave di accesso dell’elemento
- “value” è il valore assegnato all'elemento dell'array.
Supponiamo di avere un gruppo di persone e di voler assegnare il genere a ciascuna persona in corrispondenza del suo nome.
Possiamo utilizzare un array associativo per farlo. Il codice seguente ci aiuta a farlo.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); print_r($persons); echo ""; echo "Mary is a " . $persons["Mary"]; ?>
QUI,
Produzione:
Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female
Gli array associativi sono inoltre molto utili per recuperare dati dal database.
I nomi dei campi vengono utilizzati come chiavi ID.
PHP Array multidimensionali
Questi sono array che contengono altri array nidificati.
Il vantaggio degli array multidimensionali è che ci consentono di raggruppare insieme dati correlati.
Vediamo ora un esempio pratico che implementa un array multidimensionale in PHP.
La tabella seguente mostra un elenco di film per categoria.
| Titolo del film | Categoria |
|---|---|
| Pink Panther | Commedia |
| Giovanni Inglese | Commedia |
| Die Hard | Action |
| Expendables | Action |
| Il Signore degli Anelli | Epico |
| Romeo e Giulietta | Romanticismo |
| Non vedere il male, non sentire il male | Commedia |
Le informazioni di cui sopra possono essere rappresentate come un array multidimensionale. Il codice seguente mostra l'implementazione.
<?php $movies = array( "comedy" => array("Pink Panther", "John English", "See no evil hear no evil"), "action" => array("Die Hard", "Expendables"), "epic" => array("The Lord of the rings"), "Romance" => array("Romeo and Juliet") ); print_r($movies); ?>
QUI,
Produzione:
Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )
Un altro modo per definire lo stesso array è il seguente.
<?php $film = array( "comedy" => array( 0 => "Pink Panther", 1 => "John English", 2 => "See no evil hear no evil" ), "action" => array ( 0 => "Die Hard", 1 => "Expendables" ), "epic" => array ( 0 => "The Lord of the rings" ), "Romance" => array ( 0 => "Romeo and Juliet" ) ); echo $film["comedy"][0]; ?>
Produzione:
Pink Panther
Nota: l'array numerico dei film è stato annidato all'interno dell'array associativo delle categorie.
Array PHP: OperaTors
| Operator | Nome | Descrizione | Come fare | Uscita |
|---|---|---|---|---|
| x+y | Unione | Combina gli elementi di entrambi gli array |
<?php $x = array('id' => 1); $y = array('value' => 10); $z = $x + $y; ?> |
Array([id] => 1 [valore] => 10) |
| x == i | Pari | Confronta due array e restituisce true se sono uguali |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x == $y) { echo "true"; } else { echo "false"; } ?> |
Vero o 1 |
| x === y | Identico | Confronta sia i valori che tipi di dati |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x === $y) { echo "true"; } else { echo "false"; } ?> |
Falso o 0 |
| x != y, x <> y | Non uguale | Restituisce true se i due array non sono uguali |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x != $y) { echo "true"; } else { echo "false"; } ?> |
Falso o 0 |
| x !== y | Non identico | Restituisce true se i due array non sono identici per valore o tipo |
<?php $x = array("id" => 1); $y = array("id" => "1"); if($x !== $y) { echo "true"; } else { echo "false"; } ?> |
Vero o 1 |
Funzioni degli array PHP
Funzione di conteggio
La funzione `count` viene utilizzata per contare il numero di elementi contenuti in un array PHP. Il codice seguente mostra l'implementazione.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo count($lecturers); ?>
Produzione:
3
è la funzione array
La funzione is_array viene utilizzata per determinare se una variabile è un array o meno. Vediamo ora un esempio che implementa la funzione is_array.
<?php $lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith"); echo is_array($lecturers); ?>
Produzione:
1
Riordina
Questa funzione viene utilizzata per ordinare gli array in base ai loro valori.
Se i valori sono alfanumerici, li ordina in ordine alfabetico.
Se i valori sono numerici, li ordina in ordine crescente.
Rimuove le chiavi di accesso esistenti e aggiunge nuove chiavi numeriche.
L'output di questa funzione è un array numerico.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); sort($persons); print_r($persons); ?>
Produzione:
Array ( [0] => Female [1] => Female [2] => Male )
ksort
Questa funzione è usata per ordinare l'array usando la chiave. Il seguente esempio ne illustra l'uso.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); ksort($persons); print_r($persons); ?>
Produzione:
Array ( [John] => Male [Mary] => Female [Mirriam] => Female )
assortimento
Questo funzione viene utilizzato per ordinare l'array utilizzando i valori mentre mantieniping i tasti. L'esempio seguente ne illustra l'utilizzo.
<?php $persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female"); asort($persons); print_r($persons); ?>
Produzione:
Array ( [Mary] => Female [Mirriam] => Female [John] => Male )
Perché usare gli array?
- Il contenuto degli array può essere espanso per contenere più valori.
- Gli array aiutano a raggruppare facilmente informazioni correlate, come ad esempio i dettagli di accesso al server.
- Gli array aiutano a scrivere codice più pulito.



