当前位置: 首页 > 未分类>阅读正文

php __call方法

2022.7.25 朱丰华 1245 次 留下评论 425字

php类中__开头的方法为魔术方法。

__call方法有两个参数:$name,$args ,分别表示方法的名称, 以及参数。

当调用了一个类中不存在的方法时,就会自动触发 __call 方法。

实例:

<?php

class Animal{

    public $name = "";

    public function __construct($name){

        $this->name = $name;

    }

    public function eat(){

    }

    public function sleep(){

    }

    //魔术方法 

    public function __call($name,$args){

        echo "自动执行了Animal类中的__call方法<br/>";

    }

}

$monkey = new Animal("猴子");

//调用不存在的方法

$monkey->test();

?>

运行结果:

自动执行了Animal类中的__call方法

类似地,如果调用了类中不存在的静态方法,则触发 __callStatic($name,$args)。

本篇完,还有疑问?留下评论吧

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注