Comment déterminer si des fonctions, des classes et des méthodes de classe existent en PHP

怪我咯
Libérer: 2023-03-11 20:16:02
original
9880 Les gens l'ont consulté

Lors du développement PHP, si vous rencontrez une situation dans laquelle vous ne pouvez pas modifier la configuration pertinente du serveur et ne savez pas si certaines fonctions du serveur sont activées, l'utilisation directe de certaines fonctions spéciales entraînera le programme pour signaler une erreur, tel que curl_init est une fonction système. Lorsque le serveur n'active pas les services liés à curl, l'utilisation directe des fonctions de la série curl signalera une erreur telle que Appel à une fonction non définie curl_init()....

Alors, que devons-nous faire si cela se produit ? Il n’y a pas qu’une seule façon de faire plusieurs choses. Si certaines méthodes ne fonctionnent pas, nous pouvons également en utiliser une autre. Ici, nous devons impliquer le problème de juger si une certaine méthode existe. Si la méthode existe, utilisez cette méthode. Si la méthode n'existe pas, utilisez une autre méthode.

Voici un résumé de la façon de déterminer si une fonction, une classe et une méthode dans une classe existent :

(1) PHP détermine si une fonction système ou une fonction écrite par vous-même existe

bool function_exists ( string $function_name ) détermine si la fonction a été définie, par exemple :

if(function_exists('curl_init')){
	curl_init();
}else{
	echo 'not function curl_init';
}
Copier après la connexion

(2) PHP détermine si la classe existe

bool class_exists ( string $class_name [, bool $autoload = true ] ) vérifie si une classe a été définie, elle doit retourner vrai, sinon elle renvoie faux, par exemple :

if(class_exists('MySQL')){
    $myclass=new MySQL();
}
Copier après la connexion

(3) Jugement PHP Si une méthode de la classe a été définie

bool method_exists ( Mixed $object , string $method_name ) Vérifiez si la méthode de la classe existe, par exemple :

$directory=new Directory;
if(!method_exists($directory,'read')){
	echo '未定义read方法!';
}
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!