2013-03-09 8 views
12

Gibt es eine Möglichkeit zu überprüfen, ob ein Array-Index existiert oder null ist? isset() sagt Ihnen nicht, ob der Index nicht existiert oder existiert, aber null ist. Wenn ich das tue: isset($array[$index]) || is_null($array[$index]) wird es nicht funktionieren, denn wenn der Index nicht existiert, stürzt is_null ab.PHP - Überprüfen, ob ein Array-Index existiert oder Null ist

Wie kann ich das bitte überprüfen? Gibt es auch eine Möglichkeit, nur zu überprüfen, ob etwas existiert, egal ob es auf null gesetzt ist oder nicht?

+0

Versuchen leer zu überprüfen. –

+0

Wäre das nicht dasselbe, wenn Anweisungen in einer verschachtelten if-Struktur gut funktionieren? – christopher

+0

"array_key_exists kann sicherlich den Trick machen." das ist die Antwort ... gut .. +1 für Sie –

Antwort

7

Dies ist die sehr gute Frage, und Sie können für diese get_defined_vars() verwenden:

$foo = NULL; 
$a = get_defined_vars(); 

if (array_key_exists('def', $a)) { 
    // Should evaluate to FALSE 
}; 

if (array_key_exists('foo', $a)) { 
    // Should evaluate to TRUE 
}; 

Dies wird Ihr Problem

+0

Ok, aber fügen Sie die array_key_exist Sache darin dann hinzu – Virus721