Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.php > #3605
| From | "Christoph M. Becker" <cmbecker69@arcor.de> |
|---|---|
| Newsgroups | de.comp.lang.php |
| Subject | Re: Designfrage |
| Date | 2015-12-12 19:16 +0100 |
| Organization | solani.org |
| Message-ID | <n4hoa5$ivc$1@solani.org> (permalink) |
| References | <1t55f16c9di4689n3e8%sfroehli@Froehlich.Priv.at> <murnm1$qlc$1@dont-email.me> <2915507.bUqziVz7J1@PointedEars.de> |
Am 05.10.2015 um 22:28 schrieb Thomas 'PointedEars' Lahn:
> Das bedeutet auch, dass für Funktionen, die Methoden sind, die Sichtbarkeit
> deklariert werden kann (siehe oben); für die übrigen Funktionen jedoch
> nicht: Letztere sind entweder global deklariert, dann sind sie immer
> sichtbar; oder sie sind lokal deklariert, dann sind sie nur im lokalen
> Aufrufkontext sichtbar:
>
> function foo () {}
>
> function bar ()
> {
> function baz () {}
>
> /* Aufruf möglich */
> baz();
> }
>
> /* Aufruf möglich */
> foo();
> bar();
>
> /*
> * Aufruf nicht möglich: “Fatal error: Call to undefined function baz()”
> */
> baz();
Das ist so nicht ganz richtig. Eigentlich gibt es bei PHP (im Gegensatz
zu manch anderen Programmiersprachen) keine lokalen Funktionen. Wird die
Funktion "baz" im Rumpf der Funktion "bar" deklariert, so wird sie beim
ersten Aufruf von bar() im globalen Gültigkeitsbereich definiert. Ein
erneuter Aufruf von bar() ergibt einen Fehler:
function foo () {}
function bar ()
{
function baz () {}
/* Aufruf möglich */
baz();
}
baz(); // Fatal error: Call to undefined function baz()
bar(); // okay
baz(); // okay
bar(); // Fatal error: Cannot redeclare baz()
--
Christoph M. Becker
Back to de.comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar
Designfrage Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2015-09-10 11:48 +0000
Re: Designfrage Niels Braczek <nbraczek@freenet.de> - 2015-09-10 14:53 +0200
Re: Designfrage Claus Reibenstein <4spamersonly@kabelmail.de> - 2015-09-10 18:57 +0200
Re: Designfrage Gregor Kofler <usenet@gregorkofler.com> - 2015-09-11 00:54 +0200
Re: Designfrage Claus Reibenstein <4spamersonly@kabelmail.de> - 2015-09-11 12:07 +0200
Re: Designfrage failwell <steve@mindfav.com> - 2015-10-04 17:29 +0000
Re: Designfrage Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-10-05 22:28 +0200
Re: Designfrage Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-10-05 22:33 +0200
Re: Designfrage "Christoph M. Becker" <cmbecker69@arcor.de> - 2015-12-12 19:16 +0100
Re: Designfrage Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-12-12 20:25 +0100
Re: Designfrage Andreas Treichel <gmblar@gmail.com> - 2015-11-01 11:09 +0100
csiph-web