In PHP, wie gelten Regeln für Variablenbereiche für Try/Catch-Blöcke? Verlassen Variablen, die innerhalb des Blocks try
deklariert wurden, den Bereich, in dem der Block beendet wurde? Oder sind sie im Umfang bis zum Ende der Funktion/Methode?PHP-Variablenbereich in Try/Catch-Block
Zum Beispiel:
try
{
// This may throw an exception when created!
$o = new Pronk();
}
catch (Exception $ex)
{
// Handle & exit somehow; not important here
return false;
}
$o->doPronk();
Ist diese gültig? Oder sollte $o = NULL;
vor dem Versuch/catch gesetzt werden, um $o
in Geltungsbereich zu halten?
(Ich weiß, dass der Beispielcode tut Arbeit, aber ich weiß auch, PHP ein wenig dumm bekommen kann, wenn es um Scoping kommt. Meine Frage ist, im Idealfall, wie sollte es? Was ist der richtige ist und richtige Art und Weise, dies zu tun?)
PHP hat keinen Blockbereich. Der Variablenumfang ist die gesamte Funktion. – Barmar