Guida a PHP: i booleani

I booleani rappresentano i possibili valori di verità di un’espressione: vero (TRUE) o falso (FALSE); sebbene sia possibile assegnare ad una variabile uno dei precedenti valori booleani (indicati tra parentesi), nella maggior parte dei casi si tratta di determinare il valore booleano associato ad un’espressione (anche di tipo diverso) quando viene usata in un’istruzione di controllo.

<?php
$x = 45; // variabile intera
if($x) // vero o falso?
{
  echo "$x è vero\n";
}
else
{
  echo "$x è falso\n";
}
?>

Conversioni implicite

Se l’espressione ha un tipo diverso dal booleano, PHP effettua una conversione implicita, che traduce ogni possibile valore di un’espressione – in base al relativo tipo – in un opportuno valore booleano: poiché la conversione è automatica e non sempre intuitiva, è bene sapere esattamente – a seconda del tipo – quando il valore di una certa espressione viene considerato vero oppure falso.

Numeri

Un numero (intero o decimale) diverso da zero (sia positivo sia negativo) è equivalente a TRUE; il solo valore zero equivale a FALSE.

Stringhe

Una stringa vuota è convertita a FALSE, mentre una contenente uno o più caratteri è considerata TRUE; fa eccezione la stringa contente il solo carattere zero (“0” o ‘0’), che viene trattata come il valore numerico corrispondente e quindi convertita a FALSE.

Array

Un array vuoto è considerato FALSE, mentre uno contenente uno o più elementi è equivalente a TRUE.

NULL

Il valore NULL, corrispondente ad una variabile non dichiarata o inizializzata, è considerato FALSE.

Tabella riepilogativa delle conversioni implicite al tipo booleano
Falso Vero
Numeri (interi o decimali) 0 diverso da 0
Stringhe vuota, “0” altre
Array Vuoto Contiene 1+ elementi
NULL Sempre
Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...