ホームページ  >  記事  >  バックエンド開発  >  PHP に関数、クラス、クラス メソッドが存在するかどうかを確認する方法

PHP に関数、クラス、クラス メソッドが存在するかどうかを確認する方法

怪我咯
怪我咯オリジナル
2017-06-28 13:35:299882ブラウズ

PHP 開発を行っているときに、サーバーの関連する構成を変更できない、またはサーバーの特定の機能が有効になっているかどうかを知ることができない状況に遭遇した場合、いくつかの特別な 関数 を直接使用すると、プログラムがシステムエラーなどのエラーを報告する原因になります。 curl_init などの関数。サーバーがcurl関連サービスを有効にしていない場合、curlシリーズ関数を直接使用すると、「未定義関数curl_init()への呼び出し...」などのエラーが報告されます。

それで、これが起こったらどうすればいいですか?多くのことを行うには 1 つの方法だけではありません。いくつかの方法が機能しない場合は、別の方法を使用することもできます。ここでは、あるメソッドが存在するかどうかを判断する問題が必要になります。そのメソッドが存在しない場合は、別のメソッドを使用します。

ここでは、関数、クラス、クラス内のメソッドが存在するかどうかを判断する方法の概要を示します:

(1) PHP は、システム関数または自分で記述した関数が存在するかどうかを判断します

bool function_exists ( string $ function_name ) 関数が定義されているかどうかを判断します。例:

if(function_exists('curl_init')){
	curl_init();
}else{
	echo 'not function curl_init';
}

(2) PHP はクラスが存在するかどうかを判断します

bool class_exists ( string $class_name [, bool $autoload = true ] ) クラスが定義されているかどうかを確認します。定義されており、true を返す必要があります。それ以外の場合は、false を返します。例:

if(class_exists('MySQL')){
    $myclass=new MySQL();
}

(3) PHP は、クラス内のメソッドが定義されているかどうかを判断します

bool method_exists (mixed $object , string $method_name )クラスのメソッドが存在します。例:

$directory=new Directory;
if(!method_exists($directory,'read')){
	echo '未定义read方法!';
}

以上がPHP に関数、クラス、クラス メソッドが存在するかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。