Anonyme Funktionen, auch als Schließungen bezeichnet, sind ein von PHP unterstützter Mechanismus, um Funktionen zur Laufzeit dynamisch zu definieren. Diese Art von Funktion hat keinen Namen und kann Variablen direkt zugewiesen, als Parameter übergeben oder für Rückrufe und andere Szenarien verwendet werden. Es ist in der modernen PHP -Programmierung sehr häufig.
Die grundlegende Syntax zur Definition der anonymen Funktionsempfängerparameter in PHP lautet wie folgt:
function($argument1, $argument2, ..., $argumentN) {
// Funktionskörper
}
Sie können eine beliebige Anzahl von Parametern an anonyme Funktionen wie reguläre Funktionen übergeben.
Parameter anonymer Funktionen können auf zwei Arten übergeben werden: nach Wert und Referenz.
Wenn nach Wert übergeben wird, beeinflussen Änderungen an Parametern innerhalb der Funktion keine externen Variablen.
// Nach Wert passieren
$increment = function($number) {
return $number + 1;
};
echo $increment(5); // Ausgabe:6
Durch die Referenz erfolgen, das & Symbol wird verwendet, und Änderungen an Parametern innerhalb der Funktion werden synchron außerhalb der Funktion reflektiert.
// Durch Referenz passieren
$double = function(&$number) {
$number *= 2;
};
$value = 4;
$double($value);
echo $value; // Ausgabe:8
Die praktische Anwendung anonymer Funktionen ist sehr weit verbreitet, und die folgenden Beispiele, um ihre gemeinsamen Verwendungen zu veranschaulichen.
Kombinieren Sie die Funktion array_filter unter Verwendung anonymer Funktionen, filtern schnell Elemente in einem Array, das bestimmte Bedingungen erfüllt:
$numbers = array(1, 2, 3, 4, 5);
$evenNumbers = array_filter($numbers, function($number) {
return $number % 2 == 0;
});
print_r($evenNumbers);
// Ausgabe:Array ( [1] => 2 [3] => 4 )
Anonyme Funktionen können auch in fortschrittlichen Anwendungen wie Charakterenverarbeitung verwendet werden:
$string = "Hello, world!";
$lengthWithoutSpaces = 0;
array_walk(str_split($string), function($character) use (&$lengthWithoutSpaces) {
if (ord($character) != 32) {
$lengthWithoutSpaces++;
}
});
echo $lengthWithoutSpaces; // Ausgabe:12
Die anonymen Funktionen von PHP sind nicht nur synztastet, sondern auch leistungsfähig. Sie unterstützen flexible Parameterüberschreitungsmethoden und können eingehende Werte oder Referenzen direkt in Funktionen verwenden, was zur Verbesserung der Lesbarkeit und Modularität des Codes von großer Hilfe ist. Bei der täglichen Entwicklung ist die Beherrschung der Verwendung anonymer Funktionen ein wichtiger Bestandteil des Schreibens eines effizienten PHP -Code.