Introduzione
In qualsiasi linguaggio di programmazione, gli operatori servono per eseguire operazioni tra variabili e valori. PHP offre una vasta gamma di operatori: dai più semplici aritmetici a quelli logici, di assegnazione, confronto e incremento.
Conoscere bene gli operatori in PHP ti permette di scrivere codice più pulito, efficiente e leggibile. In questo articolo analizziamo i principali operatori con esempi pratici e spiegazioni passo passo.
1. Operatori aritmetici
Utilizzati per eseguire operazioni matematiche:
$a = 10;
$b = 3;
Operatore |
Descrizione |
Esempio ($a = 10, $b = 3 ) |
Risultato |
* |
Moltiplicazione |
$a * $b |
30 |
% |
Modulo (resto) |
$a % $b |
1 |
2. Operatori di assegnazione
Assegnano un valore a una variabile. L’operatore di base è =
.
$x = 5;
$x += 3; // equivale a $x = $x + 3
Operatore |
Significato |
= |
Assegna |
+= |
Aggiunge e assegna |
-= |
Sottrae e assegna |
*= |
Moltiplica e assegna |
/= |
Divide e assegna |
$a = 5;
$b = "5";
Operatore |
Descrizione |
Risultato |
== |
Uguale (valore) |
true |
=== |
Uguale (valore e tipo) |
false |
!= |
Diverso |
false |
!== |
Diverso (anche tipo) |
true |
> |
Maggiore di |
false |
< |
Minore di |
true |
>= |
Maggiore o uguale |
false |
<= |
Minore o uguale |
true |
<=> |
Operatore spaceship (PHP 7+) |
0 |
4. Operatori logici
Utilizzati per gestire condizioni booleane:
$a = true;
$b = false;
Operatore |
Descrizione |
Esempio |
Risultato |
&& |
AND logico |
$a && $b |
false |
` |
|
` |
OR logico |
! |
NOT logico |
!$a |
false |
5. Operatori di incremento/decremento
$x = 5;
echo ++$x; // stampa 6
echo $x--; // stampa 6, poi decrementa a 5
Esempio pratico completo
$prezzo = 100;
$sconto = 20;
if ($prezzo > 0 && $sconto > 0) {
$finale = $prezzo - ($prezzo * $sconto / 100);
echo "Prezzo scontato: €$finale";
}
Output: Prezzo scontato: €80
Best practice
- Usa
===
per confrontare valori e tipo in modo sicuro
- Evita confronti ambigui con
==
quando lavori con tipi misti
- Ricorda che
false == 0
è true
, ma false === 0
è false
- Usa operatori logici per condizioni complesse in
if
, while
, ecc.