isset

(PHP 3, PHP 4, PHP 5 )

isset -- Verifica se una variabile è definita

Descrizione

bool isset ( mixed variabile [, ...])

Restituisce TRUE se la variabile esiste; FALSE in caso contrario.

Se una variabile è stata cancellata con unset(), non potrà essere impostata. La funzione isset() restituirà FALSE se viene utilizzata per testare una variabile valorizzata a NULL. Inoltre occorre notare che il byte NULL ("\0") non equivale alla costante PHP NULL.

Attenzione: La funzione isset() lavora soltanto con variabili, il passaggio di qualsiasi altro tipo di parametro genera un errore di parsing. Per verificare se le costanti sono definite utilizzare la funzione defined().

<?php

$var
= '';

// Questo test sarà TRUE pertanto sarà visualizzato il testo.
if (isset($var)) {
    echo
"Questa variabile è valorizzata, pertanto scrivo.";
}

// Nel prossimo esempio useremo var_dump per visualizzare
// il valore restituito da isset().

$a = "test";
$b = "anothertest";

var_dump(isset($a));      // TRUE
var_dump(isset($a, $b)); // TRUE

unset ($a);

var_dump(isset($a));     // FALSE
var_dump(isset($a, $b)); // FALSE

$foo = NULL;
var_dump(isset($foo));   // FALSE

?>

Questo esempio utilizza gli elementi di un array:

<?php

$a
= array ('test' => 1, 'hello' => NULL);

var_dump(isset($a['test']));            // TRUE
var_dump(isset($a['foo']));             // FALSE
var_dump(isset($a['hello']));           // FALSE

// La chiave 'hello' vale NULL pertanto viene considerata non impostata.
// Se si desidera verificare l'esistenza di chiavi con valore NULL, usare:
var_dump(array_key_exists('hello', $a)); // TRUE

?>

Nota: Poichè questo è un costrutto del linguaggio e non una funzione, non può essere chiamato con le variabili funzione

Vedere anche empty(), unset(), defined(), la tabella di comparazione dei tipi, array_key_exists() e l'operatore di controllo degli errori @.