Wenn isset() auf Arrays ohne Angabe Schlüssel?

Habe ich gelernt, dass isset($array) ist nicht erforderlich, wenn die überprüfung auf die Existenz von bestimmten Schlüssel, aber ich weiß auch, dass es einige Gründe zu prüfen, ohne Schlüssel, wenn $array instanziiert wird.

Dies zum Beispiel:

foreach ($foo as $bar) {
    echo $bar;
}

PHP Notice: Undefined variable: foo
PHP Warning: Invalid argument für foreach geliefert()

ist besser so:

if (isset($foo)) {
    foreach ($foo as $bar) {
    echo $bar;
    }
}

Als ich arrays verwenden eine Menge, wenn der Umgang mit Daten und ich wollte Fragen, ob es gibt einige andere Fälle, wo ich überprüfen soll, ob ein ganzes array isset()? Oder sollte ich nur stick auf die überprüfung jeder $array[$key] dass ich nutzen werde, wenn bekannt?
Dies bezieht sich auf die Frage, ob es irgendwelche Vorteile oder Nachteile auf, dies zu tun:

if (isset($foo[0])) {
    foreach ($foo as $bar) {
        //noop
    }
}

statt:

if (isset($foo)) {
    foreach ($foo as $bar) {
        //noop
    }
}

Also, sollte ich jemals verwenden isset($array) im Ort isset($array[$key]) wenn $key bekannt ist?

InformationsquelleAutor Sampo Sarrala | 2012-04-23

Schreibe einen Kommentar