Maison  >  Article  >  développement back-end  >  Quelle est la fonction de la méthode magique d'appel php

Quelle est la fonction de la méthode magique d'appel php

青灯夜游
青灯夜游original
2021-09-03 11:44:372133parcourir

La méthode magique php "__call()" sera appelée lors de l'appel d'une méthode qui n'existe pas ou est inaccessible. Sa fonction est de permettre au programme de continuer à s'exécuter et d'éviter les erreurs qui se produiront lorsque la méthode appelée n'existe pas ou est inaccessible. terminaison inaccessible.

Quelle est la fonction de la méthode magique d'appel php

L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3

En programmation orientée objet, PHP fournit une série de méthodes magiques, qui offrent beaucoup de commodité pour la programmation. le rôle en PHP est très important. Les méthodes magiques en PHP commencent généralement par __ (deux traits de soulignement) et ne nécessitent pas d'appels explicites mais sont automatiquement appelées sous certaines conditions.

Parmi elles, la méthode __call() ou __callStatic() est conçue pour réaliser une surcharge. Présentons-vous la méthode __call.

méthode magique php __call

La méthode __call() est appelée lorsqu'une méthode inaccessible ou inexistante dans une classe est appelée. Le format de syntaxe de cette méthode est le suivant :

public function __call($name, $arguments){
    ... ... ;
}

où $name est le nom de la méthode à appeler et $arguments est un tableau de paramètres passés à $name.

Lorsque la méthode appelée n'existe pas, la méthode __call() sera automatiquement appelée et le programme continuera à s'exécuter, évitant ainsi l'arrêt du programme causé par une erreur lorsque la méthode appelante n'existe pas.

【Exemple】Ce qui suit utilise un exemple simple pour démontrer l'utilisation de la méthode __call().

<?php
header("Content-type:text/html;charset=utf-8");
class Website{
    public function say(){
        echo &#39;Welcome PHP中文网!<br>&#39;;
    }
    public function __call($name, $arguments){
        echo &#39;你所调用的方法:&#39;.$name;
        if(!empty($arguments)){
            echo &#39;【以及参数:&#39;;
            print_r($arguments);
            echo &#39;】&#39;;
        }
        echo &#39; 不存在!<br>&#39;;
    }
}
$obj = new Website();
$obj -> say();
$obj -> url(&#39;https://www.php.cn/&#39;);
$obj -> title();
?>

Les résultats en cours d'exécution sont les suivants :

Quelle est la fonction de la méthode magique dappel php

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn