Heim >Backend-Entwicklung >PHP-Tutorial >Die Typen und Aufrufmethoden von PHP-Funktionen werden enthüllt
Die Funktionen in PHP sehen sehr einfach aus, aber tatsächlich sind sie sehr mächtig. Ich kann sie in die folgenden drei Kategorien einteilen, je nachdem, ob die Funktionsnamen festgelegt sind:
1.
Diese Art von Funktion, auch reguläre Funktion genannt, wird direkt mit dem Schlüsselwort function erstellt. Es ist auch der bekannteste Typ, zum Beispiel:
<?php //1按名调用:最直接和普通的方式echo '1.用function关键字创建常规函数,按函数名称调用:<br>'; function add($a, $b){return $a.'+'.$b.'='.($a+$b);}; echo add(5,6); echo '<hr>';
Ausführungsrückgabe:
1.用function关键字创建常规函数,按函数名称调用: 5+6=11
2. Funktionen mit dynamisch festgelegten Namen:
Diese Art von Funktion hat viele Namen, wie zum Beispiel: anonyme Funktion, variable Funktion, variable Funktion, Abschlussfunktion usw. Tatsächlich sind sie sind alle gleich. Haben Sie keine Angst vor dem Namen.
Diese dynamisch festgelegte Funktion wird unter Verwendung des Variablennamens aufgerufen, der auf diese Funktion verweist, daher eignet sie sich sehr gut für die Verwendung in Rückruffunktionen~~
Zu Lehrzwecken werde ich hier gemeinsam darauf verweisen als: Anonyme Funktion.
Es gibt zwei Hauptmethoden, um anonyme Funktionen zu erstellen. In einigen Lehrbüchern werden sie separat behandelt, daher werde ich sie hier trennen.
1. Erstellungsmethode 1: Verwenden Sie zum Vervollständigen die in PHP integrierte Funktion „create_function“ (Parameterliste, Funktionskörper). Diese beiden Parameter müssen nicht in Anführungszeichen gesetzt werden , so ist PHP. Wenn Sie mit den Vorschriften nicht zufrieden sind, können Sie eine Programmiersprache erstellen~~
//2.用系统函数create_function()来创建一个匿名函数/可变函数/变量函数/闭包函数echo '2.用内置create_function()函数创建匿名函数,用变量名调用:<br>'; $func1 = create_function('$a,$b','return $a.\'+\'.$b.\'=\'.($a+$b);'); echo $func1(5,6); echo '<hr>';
Ausführungsrückgabe:
2.用内置create_function()函数创建匿名函数,用变量名调用: 5+6=11
2. Erstellungsmethode 2 : Verwenden Sie zum Erstellen das Funktionsschlüsselwort. Der Erstellungsprozess ist der gleiche wie bei einer regulären Funktion, mit der Ausnahme, dass er an der Position des Werts erscheint, die sich rechts vom Gleichheitszeichen „=“ befindet. Weisen Sie die gesamte erstellte Funktion einer Variablen zu.
//3匿名函数:也叫闭包函数,将函数做为值赋给一个变量echo '3.用function关键字创建匿名函数,用变量名调用:<br>'; $func2 = function ($a, $b){return $a.'+'.$b.'='.($a+$b);}; echo $func2(5,6); echo '<hr>';
Ausführungsrückgabe:
3.用function关键字创建匿名函数,用变量名调用: 5+6=11
3. Nach der Erstellung übergeben Sie direkt Parameter und rufen die Ausführung auf:
Diese Art von Funktion ist einer anonymen Funktion sehr ähnlich, aber sie ist grober. Nach der Erstellung wird sie in Klammern gesetzt und in den Parametern übergeben, um sie aufzurufen überhaupt und ist eine einmalige Funktion. Werfen Sie ihn wie einen Wegwerfartikel nach Gebrauch weg.
//4自执行函数:创建完立即执行不必明示调用 echo '4.用function关键字创建匿名函数,然后直接传参调用执行:<br>'; echo (function ($a,$b){return $a.'+'.$b.'='.($a+$b);})(5,6); //自运行的匿名函数
Ausführungsrückgaben:
4.用function关键字创建匿名函数,然后直接传参调用执行: 5+6=11
Zusammenfassung (sehr wichtig, unbedingt lesen):
In PHP ist die Verwendung von Funktionen immer noch sehr flexibel, aber nein Egal, wie, Funktion ist letzten Endes immer noch ein Prozess. Gleichzeitig muss ein Rückgabewert vorhanden sein, damit Benutzer seine Existenz und seinen Wert erkennen können!
Eine Funktion wird also immer als Wert verwendet. Daher kann sie nicht auf der linken Seite des Gleichheitszeichens „=“ stehen. Dies ist der größte Unterschied zwischen Funktionen und Sprachstrukturen.
Zum Beispiel sagen wir oft: echo() und list() sind eine Sprachstruktur, keine Funktion. Obwohl sie wie Funktionen aussehen, liegt das daran, dass sie auf der linken Seite des Gleichheitszeichens platziert werden können und sind akzeptabel. Aber Funktionen funktionieren nicht. Ich hoffe, dass dieser Artikel Ihnen ein tieferes Verständnis der Funktionen vermittelt~~
Das obige ist der detaillierte Inhalt vonDie Typen und Aufrufmethoden von PHP-Funktionen werden enthüllt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!