Salta ai contenuti
Manuale LogoManuale Logo

Condizioni

Una condizione è un bivio: in base al risultato, il programma esegue un’azione oppure un’altra.

if esegue un blocco solo quando la condizione è vera.

<?php
$eta = 20;
if ($eta >= 18) {
echo "Sei maggiorenne";
}

La condizione sta tra parentesi tonde, mentre le istruzioni da eseguire stanno tra parentesi graffe.

else gestisce il caso contrario.

<?php
$eta = 16;
if ($eta >= 18) {
echo "Sei maggiorenne";
} else {
echo "Sei minorenne";
}

elseif permette di controllare più casi.

<?php
$voto = 7;
if ($voto >= 9) {
echo "Ottimo";
} elseif ($voto >= 6) {
echo "Sufficiente";
} else {
echo "Da ripassare";
}

PHP controlla le condizioni dall’alto verso il basso e si ferma al primo blocco valido.

switch è comodo quando devi confrontare lo stesso valore con più possibilità.

<?php
$giorno = "sabato";
switch ($giorno) {
case "sabato":
case "domenica":
echo "Weekend";
break;
default:
echo "Giorno lavorativo";
}

break impedisce a PHP di passare ai casi successivi. default gestisce ciò che non è stato previsto.

Una condizione deve restituire true o false.

<?php
$utenteAttivo = true;
if ($utenteAttivo) {
echo "Accesso consentito";
}

Con un nome chiaro, il codice si legge quasi come una frase.

Una decisione può dipendere da più condizioni.

<?php
$eta = 20;
$haDocumento = true;
if ($eta >= 18 && $haDocumento) {
echo "Ingresso consentito";
} else {
echo "Ingresso non consentito";
}

&& richiede che entrambe le condizioni siano vere. Se una delle due è falsa, PHP passa a else.

Quando una condizione diventa lunga, puoi assegnarne una parte a una variabile con un nome chiaro.

<?php
$totale = 75;
$clienteRegistrato = true;
$haDirittoSconto = $totale > 50 && $clienteRegistrato;
if ($haDirittoSconto) {
echo "Sconto applicato";
}

Il programma fa la stessa cosa, ma il codice è più leggibile.

Se metti un if dentro un altro if, il codice diventa difficile da seguire. Spesso puoi usare elseif, variabili booleane o funzioni piccole per chiarire la logica.

Scrivi un controllo per un ordine: se il totale e almeno 30 euro e il prodotto è disponibile, mostra Ordine confermato. Altrimenti mostra Ordine non disponibile.