In diesem Artikel geht es hauptsächlich um sechs Tipps zur Verwendung anonymer Funktionen. Interessierte Freunde können sie lernen.
Ich habe bereits einen Artikel über die Verwendung von Abschlüssen geschrieben (klicken Sie hier, um einzutreten). Dieses Mal werde ich eine ausführliche Zusammenfassung der ausführlichen Verwendung und des Verständnisses anonymer Funktionen in PHP geben:
Anonyme Funktionen in PHP werden auch als Schließungsfunktionen bezeichnet und ermöglichen die Angabe einer Funktion ohne Namen. Weisen Sie die anonyme Funktion einer Variablen zu und rufen Sie sie über die Variable auf. Ein einfaches Beispiel:
<?php$anonymousFunc = function($username){ echo $username; }; $anonymousFunc("乔峰!");
Tipp 1: Platzieren Sie die anonyme Funktion in einer normalen Funktion, oder Sie können die anonyme Funktion zurückgeben . : Dies bildet einen einfachen Abschluss
<?php function closureFunc(){ $anonymousFunc = function(){ echo "乔峰!"; }; $anonymousFunc();//普通函数内部调用了匿名函数 } closureFunc();//输出: 乔峰
Tipp 2 Referenzieren Sie lokale Variablen in anonymen Funktionen (hier müssen Sie ein PHP-Schlüsselwort in Anführungszeichen setzen)
<?php function closureFunc(){ $username = '乔峰'; $anonymousFunc = function() use($username){ echo $username; }; $anonymousFunc();//此处调用了匿名函数 } closureFunc();//输出: 乔峰
Tipp 3Eine anonyme Funktion in einer normalen Funktion zurückgeben
<?php function closureFunc(){ $username = '乔峰'; $anonymousFunc = function() use($username){ echo $username; }; return $anonymousFunc;// 函数返回匿名函数 } $func = closureFunc(); $func(); //然后调用$func()
Tipp 4Eine anonyme Funktion zurückgeben und Parameter an die anonyme Funktion übergeben
<?php function closureFunc(){ $username = '乔峰'; $anonymousFunc = function($lover,$skill) use($username){ echo $username.$lover.$skill; }; return $anonymousFunc; } $func = closureFunc(); $func("阿朱","擒龙手");//乔峰阿朱擒龙手
Tipp 5 Verwenden Sie den Verschluss, um den vom Kontext referenzierten Variablenwert zu ändern.
<?php function closureFunc(){ $number = 100; $anonymousFunc = function() use($number) { $number++; echo $number.PHP_EOL; }; echo $number.PHP_EOL; return $anonymousFunc; } $func = closureFunc();// 这里输出1,直接调用本函数的 echo $number.PHP_EOL; 即为100 $func();// 调用函数的返回值 $anonymousFunc $number++ 即为101 $func(); //101 $func();//101
Basierend auf den obigen Eingabeergebnissen wird festgestellt, dass die folgenden beiden func() beide 101 zurückgeben und der Wert sich nicht geändert hat Wenn Sie den ++-Effekt akkumulieren möchten, fügen Sie einfach ein &-Referenzsymbol hinzu (Änderungen innerhalb der anonymen Funktion wirken sich auch auf externe Variablen aus) und ändern Sie es:
<?php function closureFunc(){ $number = 100; $anonymousFunc = function() use(&$number) { $number++; echo $number.PHP_EOL; }; echo $number.PHP_EOL; return $anonymousFunc; } $func = closureFunc();// 这里输出1,直接调用本函数的 echo $number.PHP_EOL; 即为100 $func();// 调用函数的返回值 $anonymousFunc $number++ 即为101 $func(); //102 $func();//103
Tipp 6 Übergeben Sie die anonyme Funktion als ein Parameter
<?php //定义普通函数,anonymousFunc 为参数变量 function myFunc($anonymousFunc){ $anonymousFunc("乔峰"); } myFunc(function($username){ //这里调用普通函数,并把 匿名函数作为参数 传给了myFunc中的$anonymousFunc echo $username; });//输出 乔峰
Verwandte Tutorials:PHP-Video-Tutorial
Das obige ist der detaillierte Inhalt von[PHP Learning] Sechs Tipps zur Verwendung anonymer Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!