🎭 Funzioni Anonime

Le funzioni anonime sono funzioni che non hanno un nome.

Vengono create per essere usate una sola volta oppure assegnate a una variabile.

Sono anche chiamate closure.


🧠 Perché usare funzioni anonime?

Le funzioni anonime sono utili quando:

✔ serve una funzione temporanea
✔ vogliamo passare una funzione come parametro
✔ lavoriamo con array e funzioni avanzate


📌 Sintassi base

Una funzione anonima si crea usando function senza nome.

<?php
$saluta = function() {
    echo "Ciao Paolo 👋";
};

$saluta();
?>

👉 La funzione viene salvata nella variabile $saluta.

Per eseguirla basta scrivere:

$saluta();

🔎 Esempio con parametri

Anche le funzioni anonime possono avere parametri.

<?php
$somma = function($a, $b) {
    return $a + $b;
};

echo $somma(4, 6);
?>
 

✔ Output

10

🔹 Passare una funzione come parametro

Una funzione anonima può essere passata ad un’altra funzione.

Questo è molto usato con gli array.

📌 Esempio

<?php
$numeri = [1,2,3,4];

array_map(function($n) {
    echo $n * 2 . "<br>";
}, $numeri);
?>

✔ Output

2
4
6
8

La funzione anonima viene eseguita per ogni elemento dell’array.


🔹 Closure e variabili esterne

Una funzione anonima può usare variabili esterne con la parola chiave use.

<?php
$messaggio = "Ciao";

$saluta = function($nome) use ($messaggio) {
    echo $messaggio . " " . $nome;
};

$saluta("Paolo");
?>

✔ Output

Ciao Paolo

📊 Funzione normale vs anonima

Funzione normale Funzione anonima
Ha un nome Non ha nome
Si richiama con il nome Si assegna a variabile
Più tradizionale Più flessibile

🎯 Riassunto


Nel prossimo articolo possiamo vedere una versione ancora più moderna:

⚡ Arrow Functions (funzioni freccia)

Sono molto più compatte e vengono usate spesso nel PHP moderno. 🚀