Entwickler-Ecke

Programmiersprachen (Server) - Variablen in nested functions


Martok - Mi 09.05.07 17:06
Titel: Variablen in nested functions
Hallihallo!

Da helfe ich doch glatt mal mit, diese Sparte zu füllen.

Und zwar bin ich dabei, ein Wordpress-Plugin zu schreiben. Dabei habe ich (etwas gekürzt) diese Konstruktion, also eine nested function. Diese wird zum Aufbereiten der Zeilen aufgerufen, daher möchte ich nicht jedes mal get_option direkt aufrufen und dachte mir, ich nehme ne Variable. So wird das aber nichts.

Quelltext
1:
2:
3:
4:
5:
6:
function statistics_out() {
  $home = get_option('siteurl');

  function ___stats_read_posts($nr, $row,$max)
  {
    echo $home;

Egal ob ich die Variable mit global einbinde oder nicht, $home ist der Unterfunktion gänzlich unbekannt.
Klar könnte ich noch einen Parameter mehr übergeben, aber dass muss ja nicht sein, oder?

Was kann man da machen?

Danke,
Sebastian


blackbirdXXX - Mi 09.05.07 17:40

PHP kann keine closures. Das was du da hast sind einfach zwei globale Funktionen, die letztere wird allerdings erst beim Aufruf der ersten registriert.