Heim  >  Artikel  >  Backend-Entwicklung  >  PHP implementiert eine Methode, um die Angabe des Rückruftyps basierend auf Callable zu erzwingen

PHP implementiert eine Methode, um die Angabe des Rückruftyps basierend auf Callable zu erzwingen

墨辰丷
墨辰丷Original
2018-06-01 14:14:151560Durchsuche

In diesem Artikel wird hauptsächlich die Methode vorgestellt, mit der PHP Callable gezwungen wird, den Rückruftyp anzugeben. Es ist sehr gut und hat einen Referenzwert. Freunde, die es benötigen, können darauf verweisen.

Wenn eine Methode einen Rückruf akzeptieren muss Methode als Parameter, wir Sie können so schreiben

<?php
function dosth($callback){
call_user_func($callback);
}
function callback(){
echo &#39;do sth callback&#39;;
}
dosth(&#39;callback&#39;);
?>

Ausgabe:

etw. Rückruf durchführen

Aber das tun wir Ich bin mir nicht sicher, ob die Rückrufmethode aufgerufen werden kann. Daher muss viel zusätzliche Arbeit geleistet werden, um zu überprüfen, ob diese Rückrufmethode aufgerufen werden kann.

Gibt es eine bessere Möglichkeit, festzustellen, ob die Callback-Methode aufrufbar ist?
Wir können Callable verwenden, um zu erzwingen, dass der Parameter ein Rückruftyp ist, wodurch sichergestellt wird, dass die Rückrufmethode aufrufbar sein muss.

Zum Beispiel ist die Callback-Methode eine nicht existierende Methode

<?php
function dosth(callable $callback){
call_user_func($callback);
}
dosth(&#39;abc&#39;);
?>

Nach der Ausführung wird eine Fehlermeldung angezeigt: TypeError: Argument 1 Übergeben an dosth() muss aufrufbar sein
Das Programm kann die interne Verarbeitung von dosth nicht ausführen. Der Parametertyp wurde zum Schutz überprüft und verarbeitet.

Und wenn das Callable nach der Ausführung entfernt wird

<?php
function dosth($callback){
call_user_func($callback);
}
dosth(&#39;abc&#39;);
?>

, wird eine Warnung angezeigt: Warnung: call_user_func() erwartet Parameter 1 als a gültiger Rückruf, Funktion 'abc' nicht gefunden oder ungültiger Funktionsname

Das Programm kann die interne Verarbeitung von dosth ausführen, daher muss viel zusätzliche Arbeit geleistet werden, um zu überprüfen, ob diese Rückrufmethode ausgeführt werden kann angerufen.

Wenn der Parameter der Methode eine Rückrufmethode ist, sollte daher Callable hinzugefügt werden, um die Angabe als Rückruftyp zu erzwingen. Dies kann Aufruffehler reduzieren und die Qualität des Programms verbessern.

Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.

Verwandte Empfehlungen:

PHP-Array-Additionsoperation und der Unterschied zu array_merge

php Ausführlich Erläuterung der PDO-Ausnahmebehandlungsmethode

In PHP integrierte Verschlüsselungsfunktion

Das obige ist der detaillierte Inhalt vonPHP implementiert eine Methode, um die Angabe des Rückruftyps basierend auf Callable zu erzwingen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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