back to top

Svuotare un array PHP

Lavorando con gli array di PHP, può capitare l’esigenza di doverli svuotare, rimuovendo cioè ogni elemento in essi contenuto. L’operazione in questione è piuttosto semplice e può essere svolta utilizzando differenti modalità operative.

Svuotare un array con la funzione unset()

Il modo più semplice e veloce per eliminare una variabile dalla memoria è utilizzare la funzione unset(). Mediante questa funzione PHP cancellerà non solo il contenuto ma la stessa variabile! Il suo funzionamento, applicato ad un array, è il seguente:

// creo e popolo un array
$frutta = array('mela', 'pera', 'banana');

// faccio una serie di operazioni
// ...

// ora ho bisogno di svuotare l'array!
unset($frutta);

Così facendo la variabile $frutta non esisterà più, pertanto ogni tentativo di utilizzarla genererà un warning.

Svuotare un array mediante una nuova dichiarazione

Una tecnica davvero semplicissima per svuotare un array in PHP consiste nel dichiararla nuovamente, assegnandole come valore un array vuota, in questo modo:

// creo e popolo un array
$frutta = array('mela', 'pera', 'banana');

// faccio una serie di operazioni
// ...

// ora ho bisogno di svuotare l'array
$frutta = array();

A differenza dell’esempio precedente la variabile $frutta esiste ancora, quindi se provassimo ad utilizzarla il nostro codice non produrrà errori (sempre che la si richiami correttamente, ovviamente). E’ importante prestare attenzione a questa differenza tra le due tecniche, in quanto la seconda sarà preferibile ogni qual volta l’array dovesse servire nuovamente per essere, ad esempio, popolata di nuovi valori.

Cancellare specifici item dell’array

Per finire vediamo come cancellare non l’intero contenuto del nostro vettore ma solo specifici item. Supponiamo, ai fini del nostro esempio, di dover lavorare con questa variabile:

$frutta = array(
  0 => 'mela',
  1 => 'pera',
  2 => 'banana'
);

L’array definità qui sopra è identica a quella utilizzata negli esempi precedenti con la sola differenza che, al fine di rendere più chiaro il funzionamento delle operazioni che faremo in seguito, abbiamo inserito i reiferimenti alle chiavi in modo esplicito.

Supponiamo ora di voler eliminare l’elemento con valore "mela". Per farlo potremo utilizzare nuovamente la funzione unset() applicandola non all’intera array ma al singolo item, in questo modo:

unset($frutta[0]);

Come potete vedere il parametro passato alla funzione unset() è il nome della variabile seguito dall’indicazione della chiave dell’item che desideriamo eliminare. Per avere conferma dell’avvenuta cancellazione sarà sufficiente stampare il contenuto dell’array mediante la funzione print_r().

Pubblicitร 
Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).

Leggi anche...

Correggere l’errore the uploaded file exceeds the upload_max_filesize directive in php.ini

L'errore the uploaded file exceeds the upload_max_filesize directive in...

Cannot modify header information – headers already sent: come risolvere l’errore PHP

L'errore di PHP cannot modify header information - headers...

Ricavare l’estensione di un file con PHP

Quando si lavora con i file in un'applicazione web,...

GD Library: creazione, manipolazione e ridimensionamento immagini con PHP

Le librerie GD (o GD Library), sono componenti fondamentali...

PHP: impostare il fuso orario italiano

Le tue pagine PHP non mostrano l’orario corretto? Probabilmente...

5 script PHP per gestire BBCode

A volte può aversi l'esigenza di dover offrire agli...
Pubblicitร