Heim >Backend-Entwicklung >PHP-Tutorial >PHP-objektorientiertes OOP – __call behandelt Aufruffehler
Wenn bei der Programmentwicklung ein Objekt zum Aufrufen einer internen Methode des Objekts verwendet wird und die aufgerufene Methode nicht vorhanden ist, tritt im Programm ein Fehler auf, das Programm wird beendet und kann die Ausführung nicht fortsetzen. Wenn das Programm also eine Methode aufruft, die im Objekt nicht vorhanden ist, werden wir möglicherweise darauf hingewiesen, dass die aufgerufene Methode und die verwendeten Parameter nicht vorhanden sind, das Programm jedoch weiterhin ausgeführt werden kann. Zu diesem Zeitpunkt müssen wir die Methode verwenden wird automatisch aufgerufen, wenn die Methode aufgerufen wird, die nicht existiert. Methode „__call()“.
//Dies ist eine Testklasse, es gibt keine Attribute und Methoden darin
Klasse Test
{
}
/ /Ein Objekt der Testklasse generieren
$test = new Test();
//Methoden aufrufen, die im Objekt nicht vorhanden sind
$test->demo("one", "two ", "drei ");
//Das Programm wird hier nicht ausgeführt
echo „das ist ein Test
";
?>
Der folgende Fehler tritt im obigen Beispiel auf und das Programm kann normalerweise nicht weiter ausgeführt werden
//Dies ist eine Testklasse, sie enthält keine Attribute und Methoden Klassentest
{
//Methode, die automatisch aufgerufen wird, wenn eine nicht vorhandene Methode aufgerufen wird. Der erste Parameter ist der Methodenname und der zweite Parameter ist der Array-Parameter
function __call($function_name, $args) {
print "Die Funktion, die Sie aufgerufen haben: $function_name(parameters: ";
print_r($args );
echo ") existiert nicht!
";
}}// Generieren Sie ein Testklassenobjekt
$test=new Test();
//Rufen Sie Methoden auf, die im Objekt nicht vorhanden sind
$test->demo("one", "two", " three ");
//Das Programm wird nicht beendet und kann hier ausgeführt werden
echo „das ist ein Test
";
?>
Das Ausgabeergebnis des obigen Beispiels ist:
Die Funktion, die Sie aufgerufen haben: Demo (Parameter: Array ( [0] = > one [1] => two [2] => three )) existiert nicht! das ist ein Test
Der obige Inhalt ist zitiert aus „Fried Peanuts“ Bruder, danke, Bruderanteil.
Das Obige stellt den PHP-objektorientierten OOP-__call zur Behandlung von Aufruffehlern vor, einschließlich des Inhalts. Ich hoffe, er wird für Freunde hilfreich sein, die sich für PHP-Tutorials interessieren.