Elimina un elemento da un array in PHP
-
Usa la funzione
unset()
per eliminare un elemento da un array in PHP -
Usa la funzione
array_splice()
per eliminare un elemento da un array in PHP -
Usa la funzione
array_diff()
per eliminare un elemento da un array in PHP
In questo articolo, introdurremo metodi per eliminare un elemento da un array in PHP.
- Utilizzo della funzione
unset()
- Utilizzo della funzione
array_splice()
- Utilizzo della funzione
array_diff()
Usa la funzione unset()
per eliminare un elemento da un array in PHP
La funzione incorporata unset()
viene utilizzata per eliminare il valore memorizzato in una variabile. È applicabile solo alle variabili locali. Non riflette il suo comportamento sulle variabili globali. Possiamo usare questa funzione per eliminare un elemento da un array. La sintassi corretta per utilizzare questa funzione è la seguente
unset($variableName);
Ha un unico parametro obbligatorio. La variabile di cui si desidera eliminare il valore viene passata come parametro a questa funzione.
<?php
//Declare the array
$flowers = array(
"Rose",
"Lili",
"Jasmine",
"Hibiscus",
"Tulip",
"Sun Flower",
"Daffodil",
"Daisy");
unset($flowers[1]);
echo "The array is:\n";
print_r($flowers);
?>
Questa funzione può eliminare un valore alla volta. Il nome dell’array insieme all’indice dell’elemento ($flowers[1]
) viene passato come parametro. Questa funzione non modifica i valori dell’indice. I valori dell’indice rimangono gli stessi di prima.
Produzione:
The array is:
Array
(
[0] => Rose
[2] => Jasmine
[3] => Hibiscus
[4] => Tulip
[5] => Sun Flower
[6] => Daffodil
[7] => Daisy
)
Come puoi vedere, l’indice 1
manca dopo aver applicato la funzione unset
.
Usa la funzione array_splice()
per eliminare un elemento da un array in PHP
La funzione array_splice()
è usata per aggiungere elementi a un array o eliminare elementi da un array. La sintassi corretta per utilizzare questa funzione è la seguente
array_splice($arrayName, $startingIndex, $numOfElements, $array2Name);
Ha quattro parametri.
$arrayName
è un parametro obbligatorio. È l’array i cui elementi verranno eliminati.$startingIndex
è l’indice dell’elemento che vogliamo eliminare.$numOfElements
è il numero di elementi che vogliamo eliminare dall’indice iniziale.$array2Name
è un array di elementi che vogliamo aggiungere.
$numOfElements
e $array2Name
sono opzionali.
<?php
//Declare the array
$flowers = array(
"Rose",
"Lili",
"Jasmine",
"Hibiscus",
"Tulip",
"Sun Flower",
"Daffodil",
"Daisy");
array_splice($flowers, 4, 3);
echo "The array is:\n";
print_r($flowers);
?>
L’array $flowers
viene passato come parametro a questa funzione insieme all’indice iniziale 4 e al numero di elementi che vogliamo eliminare-3. In questo modo, possiamo eliminare più elementi da un array.
Produzione:
The array is:
Array
(
[0] => Rose
[1] => Lili
[2] => Jasmine
[3] => Hibiscus
[4] => Daisy
)
Diversamente da unset
, la funzione array_splice
reindicizzerà automaticamente le chiavi.
Daisy
ha il nuovo indice come 4 ma non quello originale - 7, dopo aver eliminato tre elementi prima di esso.
Usa la funzione array_diff()
per eliminare un elemento da un array in PHP
La funzione incorporata array_diff()
trova la differenza tra due o più array
. Può essere utilizzato per eliminare più valori da un array senza influire sui loro indici. La sintassi corretta per utilizzare questa funzione è la seguente
array_diff($array1, $array2, $array3, ... , $arrayN);
Richiede un numero N di array
come parametri. Confronta il primo array con tutti gli altri array e restituisce un array che contiene tutti gli elementi del primo array che non sono presenti in altri array.
<?php
//Declare the array
$flowers = array(
"Rose",
"Lili",
"Jasmine",
"Hibiscus",
"Tulip",
"Sun Flower",
"Daffodil",
"Daisy");
$flowers = array_diff($flowers, array("Rose","Lili"));
echo "The array is:\n";
print_r($flowers);
?>
Qui, il primo array che abbiamo passato è $flowers
e il secondo array contiene gli elementi che vogliamo eliminare da $flowers
. Questa funzione non modifica gli indici degli elementi dell’array.
Produzione:
The array is:
Array
(
[2] => Jasmine
[3] => Hibiscus
[4] => Tulip
[5] => Sun Flower
[6] => Daffodil
[7] => Daisy
)