Heim Backend-Entwicklung PHP-Tutorial PHP-Funktionsrückruffunktion (1) Definition, Deklaration und Anwendung der Variablenfunktion

PHP-Funktionsrückruffunktion (1) Definition, Deklaration und Anwendung der Variablenfunktion

May 12, 2017 am 11:33 AM

Die sogenannte Callback-Funktion bedeutet, dass beim Aufruf einer Funktion keine Standardvariable als Parameter, sondern eine andere Funktion als Parameter an die aufgerufene Funktion übergeben wird . Wenn in der Formatbeschreibung der Funktion ein Parameter vom Typ Callback vorkommt, handelt es sich bei der Funktion um eine Callback-Funktion. Im vorherigen Abschnitt wurde die PHP-Variablenparameterfunktion vorgestellt. In diesem Abschnitt geht es um das Erlernen von PHP-Callback-Funktionen.

Die Formatbeschreibung der Rückruffunktion lautet wie folgt:

mixed funName (callback arg)   //在参数列表中使用伪类型 callback 描述
Nach dem Login kopieren

Rückruf ist auch eine Art Pseudotyp in PHP, der angibt, dass die Parameter der Funktion eine andere Funktion akzeptieren müssen als Aktualparameter. Eine sehr wichtige Frage ist, warum Funktionen als Parameter verwendet werden. Wie bereits erwähnt, kann das Ausführungsverhalten der aufrufenden Funktion durch die Übergabe von Parametern geändert werden. Manchmal ist die Möglichkeit, nur einen Wert an die Funktion zu übergeben, jedoch immer noch eingeschränkt. Wenn ein benutzerdefinierter Ausführungsprozess zur Verwendung an die Funktion übergeben werden kann, erhöht dies die Erweiterung der Funktionsfunktionalität durch den Benutzer erheblich. Auch die Deklaration und Verwendung von Callback-Funktionen ist ein kritisches Thema. Wenn Sie eine Callback-Funktion deklarieren müssen, müssen Sie zunächst die Variablenfunktion verstehen.

Variablenfunktion

Variablenfunktion wird auch als Variablenfunktion bezeichnet. Wenn auf einen Variablennamen Klammern folgen, sucht PHP nach einer Funktion mit demselben Namen wie der Variablenwert und versucht, diese auszuführen. Deklarieren Sie beispielsweise eine Funktion test() und weisen Sie der Variablen $demo den Funktionsnamen string test zu. Wenn Sie die Variable $demo direkt drucken, muss der Ausgabewert der String-Test sein; wenn Sie jedoch Klammern $demo() nach der Variable $demo hinzufügen, wird die Funktion aufgerufen, die dem Werttest der $demo-Variable entspricht. Auf diese Weise können derselben Variablen unterschiedliche Funktionsnamen zugewiesen werden, und dann kann die Funktion über die Variable aufgerufen werden, was der Anwendung polymorpher Merkmale in der objektorientierten Anwendung ähnelt.

Der Beispielcode lautet wie folgt:

<?php
 function one($a,$b){
   return $a + $b;
 }
 function two($a,$b){
   return $a*$b;
 }
 function three($a,$b){
   return $a/$b;
 }
 $result = "one";          //将函数名one赋值给变量$result,执行$result()时则调用函数one()
 //$result = "two";        //将函数名two赋值给变量$result,执行$result()时则调用函数two()
 //$result = "three";      //将函数名three赋值给变量$result,执行$result()时则调用函数three()
 echo "结果是:".$result(4,6);   //变量$result接收到哪个函数名的值,就调用哪个函数
?>
Nach dem Login kopieren

Im obigen Beispiel werden drei Funktionen one(), two() und three() deklariert und verwendet um die Summe, das Produkt und den Quotienten zweier Zahlen zu berechnen. Und weisen Sie die Funktionsnamen der drei Funktionen (ohne Klammern) der Variablen $result als Zeichenfolge zu, verwenden Sie dann den Variablennamen $result gefolgt von -Klammern und übergeben Sie zwei ganzzahlige Parameter. Dadurch wird die Funktionsausführung mit dem gefunden Gleicher Name wie der Wert der Variablen $result. Die meisten Funktionen können einer Variablen den Funktionsnamen zuweisen, um eine Variablenfunktion zu bilden. Variablenfunktionen können jedoch nicht in Sprachkonstrukten verwendet werden.

Verwenden Sie Variablenfunktionen, um Rückruffunktionen zu deklarieren und anzuwenden

Wenn Sie eine Funktion anpassen möchten, die zurückgerufen werden kann, sind Sie hier genau richtig Sie können wählen, ob Sie variable Funktionen verwenden möchten, um dies zu erreichen. Beim Definieren einer Rückruffunktion ändert sich die Deklarationsstruktur der Funktion nicht, solange der deklarierte Parameter eine gewöhnliche Variable ist. Wenn diese Parametervariable jedoch innerhalb einer Funktion verwendet wird und Klammern hinzugefügt werden, kann die Funktion mit demselben Namen wie der Parameterwert aufgerufen werden, sodass der übergebene Parameter die Namenszeichenfolge einer anderen Funktion sein muss. Der Zweck der Verwendung der Rückruffunktion besteht darin, eine selbst definierte Funktion zur Verwendung im Inneren an die Funktion zu übergeben.

Das Codebeispiel lautet wie folgt:

<?php
 //声明回调函数filter, 在0-10的整数中通过自定义条件过滤不要的数字
 function filter($fun){
   for($i=0; $i<=10; $i++){
     //将参数变量$fun加上一个圆括号$fun(),则为调用和变量$fun值同名的函数
     if($fun($i))
       continue;
       echo $i.&#39;<br>&#39;;
   }
 }
 //声明一个函数one,如果参数是3的倍数就返回ture,否则返回false
 function one($num){
   return $num%3 == 0;
 }
 //声明一个函数two,如果参数是一个回文数返回ture,否则返回false
 function two($num){
   return $num == strrev($num);
 }
 filter("one");   //打印出10以内非3的倍数,参数one是函数one()的名称字符串,是一个回调
 echo "---------------------<br>";
 filter("two");   //打印出10以内非回文数,参数two是函数two()的名称字符串,是一个回调
?>
Nach dem Login kopieren

Das Ergebnis der Ausführung ist:

PHP-Funktionsrückruffunktion (1) Definition, Deklaration und Anwendung der Variablenfunktion

oben Wenn im Beispiel die deklarierte Funktion filter () nur gewöhnliche Werte als Parameter akzeptiert, ist die Zahl, die der Benutzer herausfiltern kann, relativ einfach. In diesem Beispiel wird in der definierten Funktion filter() ein als Filterbedingung übergebener Wert aufgerufen. Auf diese Weise ist die Funktion viel leistungsfähiger. Sie können alle Zahlen herausfiltern, die Ihnen nicht gefallen filter()-Funktion. Durch Hinzufügen einer Klammer $fun() zur Parametervariablen $fun innerhalb der Funktion filter() können Sie eine Funktion mit demselben Wert wie die Variable $fun als Filterbedingung aufrufen. In diesem Beispiel werden beispielsweise zwei Funktionen eins () und zwei () deklariert, die zum Herausfiltern von Vielfachen und Palindromen von 3 innerhalb von 10 verwendet werden, solange die Funktionsnamen eins und zwei beim Aufruf von filter () Zeichenfolgen sind. An Parameter übergeben, dh diese beiden Funktionen werden zur internen Verwendung an die Funktion filter () übergeben.

In diesem Kapitel werden die Variablenfunktionsdefinition, Deklaration und Anwendung der PHP-Callback-Funktion erläutert. Im nächsten Kapitel stellen wir die call_user_func_array()-Funktion der PHP-Callback-Funktion und ihre Verwendung vor.

【Empfohlene verwandte Tutorials】

1. "php.cn Dugu Jiujian (4) - PHP-Video-Tutorial

2 Ein vollständiger Satz von Video-Tutorials zur PHP-Programmierung vom Einstieg bis zur Beherrschung


3.

Praktische PHP-Video-Tutorials

Das obige ist der detaillierte Inhalt vonPHP-Funktionsrückruffunktion (1) Definition, Deklaration und Anwendung der Variablenfunktion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie kann der Lazy-Loading-Effekt von Bildern durch PHP-Funktionen optimiert werden? Wie kann der Lazy-Loading-Effekt von Bildern durch PHP-Funktionen optimiert werden? Oct 05, 2023 pm 12:13 PM

Wie kann der Lazy-Loading-Effekt von Bildern durch PHP-Funktionen optimiert werden? Mit der Entwicklung des Internets nimmt die Anzahl der Bilder auf Webseiten zu, was die Seitenladegeschwindigkeit unter Druck setzt. Um die Benutzererfahrung zu verbessern und die Ladezeit zu verkürzen, können wir die Bild-Lazy-Loading-Technologie verwenden. Das verzögerte Laden von Bildern kann das Laden von Bildern verzögern. Bilder werden nur geladen, wenn der Benutzer zum sichtbaren Bereich scrollt, was die Ladezeit der Seite verkürzen und das Benutzererlebnis verbessern kann. Beim Schreiben von PHP-Webseiten können wir den Lazy-Loading-Effekt von Bildern optimieren, indem wir einige Funktionen schreiben. Details weiter unten

So schreiben Sie eine Java-Callback-Funktion So schreiben Sie eine Java-Callback-Funktion Jan 09, 2024 pm 02:24 PM

Die Schreibmethoden der Java-Rückruffunktion sind: 1. Schnittstellenrückruf: Definieren Sie eine Schnittstelle, die eine Rückrufmethode enthält, verwenden Sie die Schnittstelle als Parameter, an dem der Rückruf ausgelöst werden muss, und rufen Sie die Rückrufmethode zum entsprechenden Zeitpunkt auf. Anonymer innerer Klassenrückruf: Sie können anonyme innere Klassen verwenden, um Rückruffunktionen zu implementieren, um die Erstellung zusätzlicher Implementierungsklassen zu vermeiden. 3. Lambda-Ausdrucksrückrufe In Java 8 und höher können Sie Lambda-Ausdrücke verwenden, um das Schreiben von Rückruffunktionen zu vereinfachen.

Grundlegende Syntax und Anwendung von Callback-Funktionen in Java Grundlegende Syntax und Anwendung von Callback-Funktionen in Java Jan 30, 2024 am 08:12 AM

Einführung in das grundlegende Schreiben und Verwenden von Java-Rückruffunktionen: In der Java-Programmierung ist die Rückruffunktion ein gängiges Programmiermuster. Durch die Rückruffunktion kann eine Methode als Parameter an eine andere Methode übergeben werden, wodurch ein indirekter Aufruf der Methode erreicht wird. Die Verwendung von Rückruffunktionen ist in Szenarien wie der ereignisgesteuerten, asynchronen Programmierung und Schnittstellenimplementierung sehr verbreitet. In diesem Artikel wird das grundlegende Schreiben und Verwenden von Java-Rückruffunktionen vorgestellt und spezifische Codebeispiele bereitgestellt. 1. Definition der Callback-Funktion Eine Callback-Funktion ist eine spezielle Funktion, die als Parameter verwendet werden kann

Wie kann die Speichernutzung durch PHP-Funktionen reduziert werden? Wie kann die Speichernutzung durch PHP-Funktionen reduziert werden? Oct 05, 2023 pm 01:45 PM

So reduzieren Sie die Speichernutzung durch PHP-Funktionen. Bei der Entwicklung ist die Speichernutzung ein sehr wichtiger Gesichtspunkt. Wenn in einem Programm viel Speicher verwendet wird, kann es zu Verlangsamungen oder sogar Programmabstürzen kommen. Daher ist die vernünftige Verwaltung und Reduzierung der Speichernutzung ein Thema, auf das jeder PHP-Entwickler achten sollte. In diesem Artikel werden einige Methoden zur Reduzierung der Speichernutzung durch PHP-Funktionen vorgestellt und spezifische Codebeispiele als Referenz für die Leser bereitgestellt. Verwenden Sie die Funktion unset(), um Variablen in PHP freizugeben. Wenn eine Variable nicht mehr benötigt wird, verwenden Sie

Wie performant sind PHP-Funktionen? Wie performant sind PHP-Funktionen? Apr 18, 2024 pm 06:45 PM

Die Leistung verschiedener PHP-Funktionen ist entscheidend für die Anwendungseffizienz. Zu den Funktionen mit besserer Leistung gehören echo und print, während Funktionen wie str_replace, array_merge und file_get_contents eine langsamere Leistung aufweisen. Beispielsweise wird die Funktion str_replace zum Ersetzen von Zeichenfolgen verwendet und weist eine mäßige Leistung auf, während die Funktion sprintf zum Formatieren von Zeichenfolgen verwendet wird. Die Leistungsanalyse zeigt, dass die Ausführung eines Beispiels nur 0,05 Millisekunden dauert, was beweist, dass die Funktion eine gute Leistung erbringt. Daher kann der kluge Einsatz von Funktionen zu schnelleren und effizienteren Anwendungen führen.

Zusammenfassung der Methoden zur Implementierung von Bildbearbeitungs- und Verarbeitungsfunktionen mithilfe von PHP-Bildverarbeitungsfunktionen Zusammenfassung der Methoden zur Implementierung von Bildbearbeitungs- und Verarbeitungsfunktionen mithilfe von PHP-Bildverarbeitungsfunktionen Nov 20, 2023 pm 12:31 PM

PHP-Bildverarbeitungsfunktionen sind eine Reihe von Funktionen, die speziell zum Verarbeiten und Bearbeiten von Bildern verwendet werden. Sie bieten Entwicklern umfangreiche Bildverarbeitungsfunktionen. Mithilfe dieser Funktionen können Entwickler Vorgänge wie Zuschneiden, Skalieren, Drehen und Hinzufügen von Wasserzeichen zu Bildern implementieren, um unterschiedliche Bildverarbeitungsanforderungen zu erfüllen. Zunächst werde ich vorstellen, wie PHP-Bildverarbeitungsfunktionen zum Implementieren der Bildzuschneidefunktion verwendet werden. PHP stellt die Funktion imagecrop() zur Verfügung, mit der Bilder zugeschnitten werden können. Durch Übergabe der Koordinaten und der Größe des Zuschneidebereichs können wir das Bild zuschneiden

Ähnlichkeiten und Unterschiede zwischen PHP-Funktionen und Flutter-Funktionen Ähnlichkeiten und Unterschiede zwischen PHP-Funktionen und Flutter-Funktionen Apr 24, 2024 pm 01:12 PM

Die Hauptunterschiede zwischen PHP- und Flutter-Funktionen sind Deklaration, Syntax und Rückgabetyp. PHP-Funktionen verwenden eine implizite Rückgabetypkonvertierung, während Flutter-Funktionen explizit Rückgabetypen angeben; PHP-Funktionen können optionale Parameter über ? angeben, während Flutter-Funktionen erforderliche und [] verwenden, um erforderliche und optionale Parameter anzugeben Flutter-Funktionen verwenden {}, um benannte Parameter anzugeben.

Vergleich von PHP-Funktionen mit Funktionen in anderen Sprachen Vergleich von PHP-Funktionen mit Funktionen in anderen Sprachen Apr 10, 2024 am 10:03 AM

PHP-Funktionen weisen Ähnlichkeiten mit Funktionen in anderen Sprachen auf, verfügen aber auch über einige einzigartige Funktionen. Syntaktisch werden PHP-Funktionen mit function, JavaScript mit function und Python mit def deklariert. In Bezug auf Parameter und Rückgabewerte akzeptieren PHP-Funktionen Parameter und geben einen Wert zurück. Auch JavaScript und Python verfügen über ähnliche Funktionen, die Syntax ist jedoch unterschiedlich. Was den Umfang betrifft, haben alle Funktionen in PHP, JavaScript und Python einen globalen oder lokalen Geltungsbereich. Auf globale Funktionen kann von überall aus zugegriffen werden, und auf lokale Funktionen kann nur innerhalb ihres Deklarationsumfangs zugegriffen werden.

See all articles