PHP

Aggiungi O Rimuovi Elementi

Funzioni array_push() e array_pop() in PHP: aggiungere e rimuovere elementi da un array (struttura stack) con esempi pratici e laboratorio guidato.


📦 Aggiungere e Rimuovere Elementi con array_push() e array_pop() in PHP

Le funzioni array_push() e array_pop() permettono di gestire la fine di un array aggiungendo o rimuovendo elementi. Sono particolarmente usate per creare strutture di tipo stack (pila), dove gli elementi vengono inseriti e rimossi “dall’alto”.


1. La funzione array_push()

Aggiunge uno o più elementi alla fine di un array. Ritorna il nuovo numero totale di elementi.


array_push($array, $valore1, $valore2, ...);
  • $array → l’array a cui aggiungere i valori.
  • $valore1, $valore2, ... → i valori da aggiungere in coda.
  • Ritorna: il numero di elementi totali dopo l’inserimento.

2. Esempio pratico di array_push()

<?php
$frutti = ["Mela", "Banana"];
array_push($frutti, "Arancia", "Pera");

print_r($frutti);
?>

Array
(
    [0] => Mela
    [1] => Banana
    [2] => Arancia
    [3] => Pera
)

Gli elementi "Arancia" e "Pera" sono stati aggiunti in fondo all’array.


3. La funzione array_pop()

Rimuove l’ultimo elemento di un array e lo restituisce. Se l’array è vuoto, restituisce NULL.


array_pop($array);
  • $array → l’array da cui rimuovere l’ultimo elemento.
  • Ritorna: il valore dell’elemento rimosso.

4. Esempio pratico di array_pop()

<?php
$frutti = ["Mela", "Banana", "Arancia"];
$ultimo = array_pop($frutti);

echo "Elemento rimosso: " . $ultimo . "<br>";
print_r($frutti);
?>

Elemento rimosso: Arancia
Array
(
    [0] => Mela
    [1] => Banana
)

L’ultimo elemento (Arancia) è stato rimosso e restituito.


5. Esempio combinato (Stack)

Insieme, queste funzioni simulano una pila (stack): il primo elemento inserito è l’ultimo a essere rimosso (LIFO = Last In, First Out).


<?php
$stack = [];
array_push($stack, "Primo");
array_push($stack, "Secondo");
array_push($stack, "Terzo");

echo "Array dopo push:<br>";
print_r($stack);

$estratto = array_pop($stack);
echo "<br>Elemento rimosso: $estratto<br>";

echo "Array finale:<br>";
print_r($stack);
?>

Array dopo push:
Array
(
    [0] => Primo
    [1] => Secondo
    [2] => Terzo
)

Elemento rimosso: Terzo

Array finale:
Array
(
    [0] => Primo
    [1] => Secondo
)

6. Differenze con funzioni simili
FunzioneEffettoAgisce su
array_push()Aggiunge alla fineFine dell’array
array_pop()Rimuove dalla fineFine dell’array
array_unshift()Aggiunge all’inizioInizio dell’array
array_shift()Rimuove dall’inizioInizio dell’array


LABORATORIO

Gestire una pila (stack) con array_push() e array_pop()

In questo laboratorio imparerai ad aggiungere e rimuovere elementi da un array, simulando una pila di dati (LIFO – Last In, First Out).


1 Creare un file base

Crea un file chiamato stack.php e inserisci questo codice:


<?php
$stack = [];

array_push($stack, "Libro");
array_push($stack, "Quaderno");
array_push($stack, "Matita");

echo "<h3>Contenuto della pila:</h3>";
print_r($stack);
?>
    

2 Rimuovere l’ultimo elemento

Aggiungi ora una riga per rimuovere un elemento:


<?php
$estratto = array_pop($stack);

echo "<h3>Elemento rimosso:</h3> $estratto <br>";
echo "<h3>Stato della pila:</h3>";
print_r($stack);
?>
    

3 Aggiungere nuovi elementi dinamicamente

Puoi aggiungere elementi anche in base all’input dell’utente:


<form method="post">
    <input type="text" name="nuovo" placeholder="Aggiungi elemento">
    <input type="submit" value="Aggiungi">
</form>

<?php
if (isset($_POST["nuovo"])) {
    array_push($stack, $_POST["nuovo"]);
    echo "<p>Aggiunto: " . htmlspecialchars($_POST["nuovo"]) . "</p>";
}
print_r($stack);
?>
    

4 Test e analisi

  • Osserva come gli elementi vengono aggiunti in fondo all’array.
  • Rimuovi elementi e verifica che l’ultimo inserito sia il primo a uscire (LIFO).
  • Prova con tipi di dati diversi (stringhe, numeri, array).
  • Combina array_push() con array_pop() per creare un sistema di “cronologia” o “undo”.