PHP 重载方法 __call()_PHP_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > PHP > PHP 重载方法 __call()

PHP 重载方法 __call()

 2014/10/27 9:13:42  海天片语  程序员俱乐部  我要评论(0)
  • 摘要:PHP重载方法__call()__call()方法用于监视错误的方法调用。__call()(Methodoverloading)为了避免当调用的方法不存在时产生错误,可以使用__call()方法来避免。该方法在调用的方法不存在时会自动调用,程序仍会继续执行下去。语法:function__call(string$function_name,array$arguments){......}该方法有两个参数,第一个参数$function_name会自动接收不存在的方法名
  • 标签:方法 PHP all 重载
class="java" name="code">

PHP 重载方法 __call()
__call() 方法用于监视错误的方法调用。
__call()(Method overloading)
为了避免当调用的方法不存在时产生错误,可以使用 __call() 方法来避免。该方法在调用的方法不存在时会自动调用,程序仍会继续执行下去。
语法:
function __call(string $function_name, array $arguments)
{
    ......
}
该方法有两个参数,第一个参数 $function_name 会自动接收不存在的方法名,第二个 $args 则以数组的方式接收不存在方法的多个参数。
在类里面加入:
function __call($function_name, $args)
{
    echo "你所调用的函数:$function_name(参数:<br />";
    var_dump($args);
    echo ")不存在!";
}
当调用一个不存在的方法时(如 test() 方法):
$p1=new Person();
$p1->test(2,"test");
输出的结果如下:
你所调用的函数:test(参数:
array(2) {
    [0]=>int(2)
    [1]=>string(4) "test"
}
)不存在!



发表评论
用户名: 匿名