站长论坛
标题:
《PHP高级程序设计:模式、框架和测试》——5.5 具有动态特性的静态方法
[打印本页]
作者:
superadmin
时间:
2009-8-3 10:09
标题:
《PHP高级程序设计:模式、框架和测试》——5.5 具有动态特性的静态方法
5.5 具有动态特性的静态方法
__call()函数可用来创建任意匹配类型的方法,这种方法可以处理调用类的未定义方法的情况。方法的参数是被调用的方法的名称以及传递给该方法的参数数组。现在可以用和__call方法一样的方式创建具有动态特性的静态方法。在PHP 6中,静态功能是通过实现魔术方法__callStatic()来完成的,如代码清单5-14所示。
代码清单5-14 为具有动态特性的静态方法使用__callStatic方法
<?php
class MyClass {
public static function __callStatic($name, $parameters) {
echo $name .' method called. Parameters: '. PHP_EOL .
var_export($parameters, true) . PHP_EOL;
}
}
MyClass::bogus(1, false, 'a');
bogus method called. Parameters:
array (
0 => 1,
1 => false,
2 => 'a',
)
欢迎光临 站长论坛 (http://www.tzlink.com/bbs/)
Powered by Discuz! X3.2