O'Reilly logo

PHP 5 Kochbuch, Third Edition by Stephan Schmidt, Ulrich Speidel, Matthias Brusdeylins, Carsten Lucke, Adam Trachtenberg, David Sklar

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

6.12 Dynamische Funktionen erzeugen

Problem

Sie möchten eine Funktion anlegen und definieren, während das Programm läuft.

Lösung

Seit PHP 5.3 können Sie hierfür eine Lambda-Funktion einsetzen:

$add = function($a, $b) {return $a+$b;};

$add(1, 1); // gibt 2 zurück

In PHP-Versionen vor 5.3 verwenden Sie create_function():

$add = create_function('$i,$j', 'return $i+$j;');

$add(1, 1); // gibt 2 zurück

Diskussion

Mit PHP 5.3 wurden Lambda-Funktionen eingeführt. Eine Lambda-Funktion ist eine anonyme Funktion, die an der Stelle ihrer Verwendung deklariert wird. Sie können eine Lambda-Funktion einer Variablen zuweisen und sie somit auch als Argument an andere Funktionen übergeben. Lambda-Funktionen existieren nur in dem Geltungsbereich der Variablen, der sie zugewiesen ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required