Maison  >  Article  >  développement back-end  >  Comment vérifier si une méthode existe dans un objet donné en PHP ?

Comment vérifier si une méthode existe dans un objet donné en PHP ?

藏色散人
藏色散人original
2021-08-20 10:17:241971parcourir

Dans l'article précédent "Utilisez 3 constantes magiques en PHP pour obtenir rapidement le répertoire, le nom du fichier et le numéro de ligne", je vous ai présenté la méthode d'utilisation de 3 constantes pour obtenir le répertoire courant, le nom du fichier et le numéro de ligne. ceux qui en ont besoin peuvent en apprendre davantage une fois !

Cet article vous présentera donc une question très courante lors du processus d'entretien PHP :

La question est du type "Comment PHP vérifie-t-il si une méthode dans un objet donné existe ?"

Je vous donne 3 secondes. Pouvez-vous me donner une réponse rapide ?

Oui, c'est la fonction method_exists() ! method_exists()函数!

PHP method_exists() 函数就是用于检查给定对象中的方法是否存在的,如果面试问到这种基础知识,相信大家绝对能轻而易举拿下!

下面给大家简单介绍一下method_exists()函数的使用:

该函数的语法是method_exists(objectname, methodname);

其中参数objectname就表示对象示例或者类名。

参数methodname则表示方法名。

注:参数 objectname 和 methodname 都是必填字段。

使用method_exists()的示例如下:

<?php
    class Demo {
        function funcdemo(){
            echo &#39;Hello World&#39;;
        }
    }
    $demo = new Demo();
    if(method_exists($demo, funcdemo)) {
        echo &#39;方法存在于给定对象中&#39;;
    }
?>

输出:

方法存在于给定对象中

顺便给大家介绍几个相关的函数:

function_exists() - 如果给定的函数已经被定义就返回 true;

语法:function_exists(string $function_name): bool

返回值:如果 function_name 存在且的确是一个函数就返回 true ,反之则返回 false 。

is_callable() - 检测参数是否为合法的可调用结构;

语法:is_callable(callable $name, bool $syntax_only = false, string &$callable_name = ?): bool

返回值:如果 name 可调用则返回 true,否则返回 false。

class_exists() - 检查类是否已定义;

语法:class_exists(string $class, bool $autoload = true): bool

La fonction PHP method_exists() est utilisée pour vérifier si la méthode dans un objet donné existe. Si ces connaissances de base sont demandées lors de l'entretien, je pense que vous pouvez certainement la gagner facilement !

Ce qui suit est une brève introduction à l'utilisation de la fonction method_exists() :

La syntaxe de cette fonction est method_exists(objectname, methodname);

Le Le paramètre objectname représente un exemple d'objet ou un nom de classe. 🎜🎜Le paramètre nomdeméthode représente le nom de la méthode. 🎜🎜Remarque : les paramètres nom d'objet et nom de méthode sont des champs obligatoires. 🎜🎜L'exemple d'utilisation de method_exists() est le suivant : 🎜rrreee🎜Sortie : 🎜rrreee🎜Au fait, permettez-moi de vous présenter quelques fonctions associées : 🎜🎜→function_exists() - If Renvoie vrai si la fonction donnée a été définie ; 🎜🎜Syntaxe : function_exists(string $function_name): bool🎜🎜Valeur de retour : Renvoie vrai si function_name existe et est bien une fonction , sinon il renvoie false. 🎜🎜→is_callable() - Vérifiez si le paramètre est une structure appelable légale 🎜🎜Syntaxe : is_callable(callable $name, bool $syntax_only = false, string &$callable_name = ?) : bool🎜🎜Valeur de retour : vrai si le nom est appelable, faux sinon. 🎜🎜→class_exists() - Vérifiez si la classe a été définie 🎜🎜Syntaxe : class_exists(string $class, bool $autoload = true) : bool🎜🎜Return value : Cette fonction renvoie true si la classe pointée par class a été définie, false sinon. 🎜🎜La plate-forme de site Web PHP chinois propose de nombreuses ressources pédagogiques vidéo. Tout le monde est invité à apprendre le "🎜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