Ich habe gelernt, dass isset($array) nicht erforderlich ist, wenn die Existenz eines bestimmten Schlüssels überprüft wird. Ich weiß jedoch auch, dass es einige Gründe gibt, ohne bekannten Schlüssel zu prüfen, ob $array ist wird instanziiert.
Zum Beispiel dies:
Code: Select all
foreach ($foo as $bar) {
echo $bar;
}
PHP-Hinweis: Undefinierte Variable: foo
PHP-Warnung: Ungültiges Argument für foreach() angegeben
ist so besser:
Code: Select all
if (isset($foo)) {
foreach ($foo as $bar) {
echo $bar;
}
}
Da ich beim Umgang mit Daten häufig Arrays verwende, wollte ich fragen, ob es noch andere Fälle gibt, in denen ich prüfen sollte, ob das gesamte Array isset() ist ? Oder sollte ich einfach weiterhin jedes $array[$key] überprüfen, das ich verwenden werde, wann immer es bekannt ist?
Dies bezieht sich auf die Frage, ob es irgendwelche Vor- oder Nachteile hat, wenn man dies tut:
Code: Select all
if (isset($foo[0])) {
foreach ($foo as $bar) {
// noop
}
}
Stattdessen:
Code: Select all
if (isset($foo)) {
foreach ($foo as $bar) {
// noop
}
}
Sollte ich jemals isset($array) anstelle von isset($array[$key]) if $key< verwenden? /code> ist bekannt?