dedlfix: Verständnisfrage innerhalb Funktionen includen

Beitrag lesen

echo $begrüßung;

Wenn das aber nun keine einfache Variabel(in der externen Datei) ist die ich include, sondern eine
Funktion, dann ist diese auch ausserhalb aufrufbar. Das bedeutet zwar, dass Funktionen immer global sind, aber einige Fragen bleiben doch.

Richtig, es gibt keine lokalen Funktionen.

Darf eine Funktion innerhalb einer anderen Funktion auftauchen, wahrscheinlich schon, daher frage ich mal anders, gibt es Gründe das nicht zu tun?

Dürfen schon. Allerdings wird PHP bei mehrfachem Aufruf der äußeren Funktion jedes Mal die innere Funktion anzulegen versuchen, was beim zweiten Mal mit einem fatalen Fehler geahndet wird. Es sei denn, man verhindert mit bedingter Ausführung, dass die innere Funktion erneut angelegt wird.

Inwieweit das Schachteln der Funktionen sinnvoll ist, kommt auf den konkreten Anwendungsfall an. Ob sich nicht eine bessere Lösung für diesen Fall findet, wäre allerdings auch eine Prüfung wert.

Wie muss ich mir das bildlich vorstellen, wenn ich nicht includen würde?
func_1()
{
  func_2($para1,$para2)
  {}
}

Abgesehen vom fehlenden Schlüsselwort function, genau so.

Oder ist die visuelle Vorstellung ganz anders als PHP intern das beim includen sieht?

Ein include oder require wirkt so, als ob der zu inkludierende Code an der Stelle des include/require stünde.

echo "$verabschiedung $name";