PHP のオーバーロードされたメソッド __call()

巴扎黑
リリース: 2016-11-11 17:53:07
オリジナル
1381 人が閲覧しました


PHP のオーバーロードされたメソッド __call()

__call() メソッドは、不正なメソッド呼び出しを監視するために使用されます。

__call() (メソッドのオーバーロード)

呼び出されたメソッドが存在しない場合のエラーを回避するには、__call() メソッドを使用できます。呼び出されたメソッドが存在しない場合、このメソッドは自動的に呼び出され、プログラムは引き続き実行されます。

構文:

function __call(string $function_name, array $arguments)

{

}

このメソッドには 2 つのパラメータがあり、最初のパラメータ $function_name は既存のメソッドの名前を自動的に受け取ります。 、2 番目の $args は、存在しないメソッドの複数のパラメーターを配列の形式で受け取ります。

クラスに追加します:

function __call($function_name, $args)

{

echo "呼び出した関数: $function_name(parameters:
";

var_dump($args ) ;

echo ")Does notexist!";

}

存在しないメソッド(test()メソッドなど)を呼び出す場合:

$p1=new Person();

$p1- > test(2,"test");

出力結果は次のとおりです:

呼び出した関数: test(parameter:

array(2) {

[0]=>int(2)

[ 1]=>string(4) "テスト"

}

) は存在しません!




関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!